The course will rely on one text book but PhD students should learn to
read texts on their own in case they have to work on something not quite
familiar but in their area—
Felleisen, Findler, Flatt. Semantics Engineering with PLT Redex. MIT Press 2009.
Krishnamurthi. Programming Languages: Applications and Interpretation.
Pierce. Types and Programming Languages.
Friedman, Wand. Essentials of Programming Languages (Third edition). MIT Press 2008.
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.