| Date | Topic | Readings/Notes | Homework | |
| W | Apr 2 | Intro to PL, intro to Scheme | PLAI 1, HtDP Ch. 1-6, Lab 1 | |
| F | 4 | Ripping through HtDP: different kinds of data | HTDP Ch. 7-10, Lab 2, quick-ref.scm | |
| M | 7 | Lists | HtDP 11-18, Lab 3 | Assignment 1 due |
| W | 9 | A few little languages, Parsing | PLAI Ch. 2, Lab 4 | |
| F | 11 | Variables, Substitution | PLAI Ch. 3, Lab 5 | |
| M | 14 | Functions, Function calls | PLAI Ch. 4, Lab 6 | |
| W | 16 | Environments | PLAI Ch. 5 | Assignment 2 due |
| F | 18 | First-class functions | PLAI Ch. 6, Lab 7 | |
| M | 21 | Subst with first-class functions | PLAI Ch. 7 | |
| W | 23 | Uses of Laziness | PLAI Ch. 8 | |
| F | 25 | Implementing Laziness | Assignment 3 due | |
| M | 27 | Recursion, implementing Recursion | PLAI Ch. 9, 10 | |
| W | 30 | Structures | ||
| F | May 2 | Structures II | ||
| S | 3 | Assignment 4 due | ||
| M | 5 | Midterm | ||
| W | 7 | State | PLAI Ch. 12 | |
| F | 9 | PLAI Ch. 13-14 | ||
| M | 12 | Monadic style | Lab 8 | |
| W | 14 | Continuations | PLAI Ch. 15-16 | Assignment 5 due |
| F | 16 | Continuations Continued | PLAI Ch. 17-18 | |
| M | 19 | Continuations III | ||
| W | 21 | CPS | Lab 9 | |
| Th | 22 | CPS formalism | Assignment 6 due | |
| F | 23 | let/cc | ||
| T | 27 | uses of let/cc | ||
| W | 28 | implementing let/cc | ||
| F | 30 | Types | Assignment 7 due | |
| M | Jun 2 | Types II | ||
| W | 4 | Parsing | ||
| F | 6 | Parsing II | Assignment 8 due | |