Subtitle: Design, Evaluation, and Implementation
Author: Bruce J. Maclennan
Publisher: Oxford University Press
Copyright: 1999 by Oxford University Press
Principles of Programming Languages is an excellent guide to the basic principles that make up a well designed programming language. The book walks through the major programming languages that have been developed since the inception of computing science and discusses the positives and negatives of each design decision in an effort to help the reader understand why programming languages are the way they are. The book does not teach one how to program in many old languages, although it does teach some basic usage of many in order for the reader to fully understand the language.
Major languages that are discussed include old pseudo-code interpreters and punch card systems, Fortran, Algol-60, Pascal, ADA, LISP, Smalltalk, and Prolog.
Major language principles discussed include abstraction, automation, elegance, labeling, security, simplicity, structure, portability, and several others.
Personally, I enjoyed the book greatly and I feel that the author does a great job in showing readers that if you understand basic principles of languages, programming logic, and computer science, the language doesn't really matter. The language is just a tool used to do the job, it isn't the way of getting the job done.