| Date | Reading | Topic | Due | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 2/5 | 1 | Scheme review | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| 2/6 | 2.1-2.2 | Inductively specified data, recursion | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| 2/8 | 2.3 | Scope, names, lexical depth | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| 2/9 | continued | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| 2/12 | 3.1-3.3 | Branching | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| 2/13 | 3.4-3.5 | Records, data abstraction | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| 2/15 | 3.6 | Converting representations | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| 2/16 | continued | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| 2/19 | 4.1-4.2 | Lambda calculus | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| 2/20 | continued | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| 2/22 | 4.3 | Reduction strategies | Lab 1 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| 2/23 | Lab day | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| 3/26 | Continuations | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| 3/27 | 4.4 | Recursion in the lambda calculus | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| 3/1 | continued | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| 3/2 | Lab day | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| 3/5 | Lab day | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| 3/6 | Review | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| 3/8 | Test 1 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| 3/9 | No class | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| 3/12 | 4.5 | Imperative programming | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| 3/13 | 4.6 | Variable assignment | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| 3/15 | 5.1 | Simple interpreter, parsing | Lab 2 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| 3/16 | 5.2-5.3 | Branching, let | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| 3/19 | Lab day | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| 3/20 | 5.4 | Procedures | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| 3/22 | 5.5 | Assignment | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| 3/23 | Lab day | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| SPRING BREAK | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| 4/2 | Lab day | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| 4/3 | 5.6 | Recursion | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| 4/5 | 6.1-6.2 | Call by reference | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| 4/6 | continued | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| 4/9 | 6.3 | Call by value/result | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| 4/10 | continued | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| 4/12 | Lab day | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| 4/13 | EASTER RECESS | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| 4/16 | EASTER RECESS | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| 4/17 | 6.5 | Call by name | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| 4/19 | continued | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| 4/20 | Review | Lab 3
| 4/23 | | Test 2
| 4/24 | 13.0 | Types
| 4/26 | 13.1 | Type checking
| 4/27 | | Code
| 4/30 | | Lab day
| 5/1 | 13.2 | More type constructors
| 5/3 | 13.3 | Unification
| 5/4 | | Unification algorithm
| 5/7 | | Lab day
| 5/8 | | Type inference
| 5/10 | 13.4 | Polymorphism
| 5/11 | | Lab day
| 5/14 | | Polymorphism continued
| 5/15 | | Review
| Lab 4
| May 21 | | Final 10:30-12:30
| | |||||||||||||||||||||