Principles of Programming Languages

This course covers major topics that are important to the understanding of programming languages, mostly without dwelling too much on any particular language, except for ML for which we give a sort of crash-course.

Selected bibliography

ML for the Working Programmer by L. C. Paulson

Programming Languages: Principles and Practice by Kenneth Louden

Programming Language Design Concepts by David Watt

Object-Oriented Software Construction by Bertrand Meyer