Principles of programming languages - MacLennan, Bruce J. (Oxford University Press, 1999)
the third edition of Principles of Programming Languages: Design, Evaluation, and Implementation teaches key design and implementation skills essential for language designers, compiler writers, and other computer scientists. It also covers descriptive tools and historical precedents so that students can understand design issues in their historical context. Ideal for advanced undergraduate and graduate courses in programming languages and comparative languages, this text uses a unique horizontal organization that analyzes individual languages in their entirety, facilitating discussion of the interrelationships between the parts of a language. It teaches design skills by emphasizing basic principles more than details, focuses on methods of implementation over specific techniques, and presents concepts inductively. In-depth case studies of representative languages from five generations of programming language design (Fortran, Algol-60, Pascal, Ada, LISP, Smalltalk, and Prolog) are used to illustrate larger themes