12 Credits

We tiptoe on the broad shoulders of giants. The material in this course is heavily inspired by Structure and Interpretation of Computer Programs (Abelson and Sussman with Sussman) and Essentials of Programming Languages (Friedman, Wand, and Haynes), as well as Types and Programming Languages (Pierce). You should read these works and authors in the original.

Thanks also to the many generations of prior TAs who have shaped this course’s design, especially the grad TAs who have contributed several educational innovations in teaching style and content.