Books and background reading
The course explores many of the same themes that are covered in
- Friedman, Wand and Haynes, Essentials of Programming Languages, 3rd ed., MIT Press.
Full notes for the course are provided as part of the course outline.
The following classic articles are all very accessible, and are essential reading for anyone who really wishes to understand what's going on beneath the surface of this course.
- Reynolds (1972), Definitional Interpreters for Higher-Order Programming Languages (PDF).
- Reynolds (1998), Definitional Interpreters Revisited (PDF).
- Wadler (1992), The Essence of Functional Programming (PDF).
- Strachey (1970, pub. 2000), Fundamental Concepts of Programming Languages (PDF).
- Landin (1964), The Mechanical Evaluation of Expressions (PDF).
For convenience, local copies of these papers are provided, but they are accessible only from within the Oxford University domain.