2 Texts

The course will rely on a set of course notes and one text book, but PhD students should learn to read texts on their own in case they must work on something not quite familiar but in their area—that’s the essence of a PhD program. Hence the list includes two recommended, introductory text books.

Course Notes

Required Text

Supplemental Texts

These two undergraduate texts present the same topics from a hands-on perspective. They teach you how to construct interpreters, essential interpretation techniques, and a few applications of these techniques to domains other than programming languages. Many of you have covered this material in undergraduate courses. This course takes a look at this material from a research-oriented perspective.

This graduate text covers type systems, only one of many topics covered in this class, in much greater detail than time allows us.

This graduate text covers many of the same topics as this class although with less of an emphasis on the interaction between semantics and analysis. It may prove to be a valuable reference after completing this course.