This course could not have come together without materials and inspiration from several sources.

Many lectures and reading materials are based on these texts:

You should read these, even if you’ve taken this course.

For several assignments, we use a graphics library based on the one documented in this article: A Functional I/O System by Felleisen, Findler, Flatt, and Krishnamurthi.

Some of our assignments are adapted from other sources:

Thanks to Joseph Collard and Nimish Gupta for debugging several assignments.