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.

The site’s primary typeface is IBM Plex Serif by Mike Abbink and Bold Monday, courtesy Google Fonts.

The site’s color scheme is Palette 207308 from ColorHunt, slightly modified by Mark Lavrentyev.