Concise introduction to computer languages Design experimentation and paradigms - Cooke Daniel E Ed. (2003)