Essentials of Programming Languages

It starts with an interpreter in Scheme for a simple functional core language similar to the lambda calculus and then systematically adds constructs.

For each addition, for example, variable assignment or thread-like control, the book illustrates an increase in expressive power of the programming language and a demand for new constructs for the formulation of a direct interpreter.

Apart from the text explaining the key concepts, the book also comprises a series of exercises, enabling the readers to explore alternative designs and other issues.

Other faculty members, including Mitch Wand and Christopher Haynes, started contributing and turned "The Hitchhiker's Guide to the Meta-Universe"—as Kohlbecker had called it—into the systematic, interpreter and transformation-based survey that it is now.

EOPL has spawned at least two other related texts: Queinnec's[2] Lisp in Small Pieces[3] and Krishnamurthi's Programming Languages: Application and Interpretation.