The main text for the course will be:
Gunter, C. Semantics of Programming Languages: Structures and
Techniques, MIT Press, 1992.
LaTeX is the typesetting tool of discerning semanticists, so
you'll need some LateX reference materials. The primary LaTeX books on my
- Lamport, L. LaTeX: A Document Preparation System (Updated for
LaTeX2e), Addison-Wesley, 1994.
- Mittelbach and Goossens. The LaTeX Companion: 2nd
edition, Addison-Wesley, 2004. The first edition of this
book, produced in 1994, was a handy guide to a variety of add-on
packages and other arcana of LaTeX2e. It covered this in a mere
530 pages. The second edition has swollen to 1090 (thankfully
thin!) pages. I keep the first edition on my bookshelf close at
There are many good books on semantics. Here are a few, in
alphabetical order. Some are out of print, but some of those are
available online. If anybody finds online copies of any of these,
please let me know and I'll add them to the list.
- Barendregt, H.P. The Lambda Calculus: Its Syntax and
Semantics, North-Holland, Amsterdam, 1981. The bible. This used
to be available online.
(Can anybody find a current link?) Also check out the great customer
review at Amazon.
- Felleisen and Flatt. Programming Languages and Lambda Calculi.
Unpublished but available online.
- Chris Hankin, Lambda Calculi: A Guide for Computer
Scientists, Oxford University Press, 1995.
- Mitchell, John C. Foundations for Programming Languages.
MIT Press, 1996.
- Nielson and Nielson Semantics with Applications. John
Wiley, 1992. out of print, but available on the web (author's
page; local pdf).
- Pierce, Benjamin. Types and Programming Languages. MIT
- Pierce, Benjamin, editor. Advanced Topics in Types and
Programming Languages. MIT Press, 2005
Schmidt, David Denotational Semantics: A Methodology for Language
Development, Wm. C. Brown, 1988.
- Winskel, Glynn. The Formal Semantics of Programming Languages:
an introduction, MIT Press, 1993. I've used this as a text for
this course in the past.
Last modified: Thu Aug 28 15:26:39 EDT 2008