Reading
Do the listed reading before the date of the listed class.
Date |
| Lecture Topic |
| To Read |
| Misc |
Jan 19 |
| Introduction |
| (No reading) |
| |
Jan 21 |
| Design Recipe |
|
| ||
Jan 23 |
| Design Recipe, Lists |
|
| ||
|
|
| ||||
Jan 26 |
| Map, Filter, and Fold |
|
| ||
Jan 28 |
| Functional BBSTs |
|
| ||
Jan 30 |
| n-ary Trees and Mutual Recursion |
|
| ||
|
|
| ||||
Feb 2 |
| ASTs and s-expressions |
|
| ||
Feb 4 |
| Conditionals, Values, and Desugaring |
| PAPL 14 |
| |
Feb 6 |
| Functions via Substitution |
| PAPL 15.1 |
| |
|
|
| ||||
Feb 9 |
| Deferred Substitution |
| PAPL 15.2 |
| |
Feb 11 |
| Higher-Order Functions |
| PAPL 15.3 |
| |
| Scope Subtleties |
|
| |||
|
|
| ||||
Feb 16 |
| Recursion, Mutation Intro |
| PAPL 20, through 20.3 |
| |
Feb 18 |
| Interpreting Mutation |
| Read (or reread) ↑ |
| |
Feb 20 |
| Variables |
|
| ||
|
|
| ||||
Feb 23 |
| State and Equality |
| PAPL 10.6 |
| |
Feb 25 |
| Typing Basics |
| PAPL 16, through 16.3 |
| |
Feb 27 |
| Typing Functions |
|
| ||
|
|
| ||||
Mar 2 |
| Typing Recursion, Soundness |
|
| ||
Mar 4 |
| Inference: Constraint Generation |
| PAPL 19, through 19.2.1 |
| |
Mar 6 |
| Inference: Constraint Unification |
| Rest of PAPL 19 |
| |
|
|
| ||||
Mar 9-13 |
| (Spring Break) |
|
| ||
|
|
| ||||
Mar 16 |
| Parametric Polymorphism |
| PAPL 18 |
| |
Mar 18 |
| More Polymorphism |
| PAPL 20.6 |
| |
Mar 20 |
| Objects: Basics |
|
| ||
|
|
| ||||
Mar 23 |
| Objects: Inheritance and Mixins |
|
| ||
Mar 25 |
| Objects: Typing Basics |
| PAPL 21.6 |
| |
Mar 27 |
| Objects: Inheritance and Subtyping |
| Read (or reread) ↑ |
| |
|
|
| ||||
Mar 30 |
| Objects: Nominal vs Structural |
|
| ||
Apr 1 |
| The Expression Problem/Visitors |
| (No reading) |
| |
Apr 3 |
| Representation Decisions |
|
| ||
|
|
| ||||
Apr 6 |
| Explicit Contexts |
| (No reading) |
| |
Apr 8 |
| Stacks and PTC |
| (No reading) |
| |
Apr 10 |
| Manual Memory Management |
| PAPL 23 through 23.3 |
| |
|
|
| ||||
Apr 13 |
| Garbage Collection |
| PAPL 23 through the end |
| |
Apr 15 |
| GC Wrapup, Control Intro |
| (No reading) |
| |
Apr 17 |
| Control Operators |
| PAPL 21.1 |
| |
|
|
| ||||
Apr 20 |
| Continuations |
| PAPL 21.2 |
| |
Apr 22 |
| CPS |
| PAPL 21.3 |
| |
Apr 24 |
| CPS + Applications |
| PAPL 21.4 to the end |
| |
|
|
| ||||
Apr 27 |
| Capability Security |
|
| ||
Apr 29 |
| Green Threads |
|
|