Schedule
This is the best guess as to the rate at which we will cover material. However, schedule may be continuously revised to adjust to reality.
| Date | Reading | Topic | Project Due |
|---|---|---|---|
| 2/12 | 1.1-2.5 | Overview and grammars | |
| 2/13 | 2.6-2.8 | More on grammars | |
| 2/15 | 3 | Syntax meets semantics | |
| 2/16 | No class | ||
| . | |||
| 2/19 | 4 | Language systems | |
| 2/20 | 5 | A first look at ML | hw1 |
| 2/22 | A first look at ML, continued | ||
| 2/23 | Lab 1: ML Programming | ||
| . | |||
| 2/26 | 6 | Types | |
| 2/27 | 7 | A second look at ML | |
| 3/1 | 8 | Polymorphism | |
| 3/2 | Lab 1 continues | ||
| . | |||
| 3/5 | 9 | A third look at ML | |
| 3/6 | 10 | Scope | |
| 3/8 | 11 | A fourth look at ML | hw2 |
| 3/9 | Lab 1 concludes | ||
| . | |||
| 3/12 | 12.1-12.6 | Activation records | Lab 1 |
| 3/13 | extra office hour | ||
| 3/15 | Review/catch-up | ||
| 3/16 | test 1 | ||
| . | |||
| 3/19 | 12.7-12.9 | Closures | |
| 3/20 | 13 | A first look at Java | |
| 3/22 | 14.1-14.2 | Memory management | |
| 3/23 | 15 | A second look at Java | |
| . | |||
| 3/26 | Interpreter lab preview | hw3 | |
| 3/27 | Lab 2 | ||
| 3/28 | Bracha | Java generics | |
| 3/29 | Lab 2 continues | ||
| . | |||
| 4/2 | Spring Break | ||
| 4/3 | Spring Break | ||
| 4/5 | Spring Break | ||
| 4/6 | Spring Break | ||
| . | |||
| 4/9 | Lab 2 concludes | ||
| 4/10 | Lab 3 | Generics lab preview | Lab 2 |
| 4/12 | Lab 3: Java Generics | ||
| 4/13 | 16 | Object orientation | |
| . | |||
| 4/16 | 17 | A third look at Java | |
| 4/17 | Lab 3 continues | ||
| 4/19 | Lab 3 continue | ||
| 4/20 | Lab 3 continues | hw4 | |
| . | |||
| 4/23 | Lab 3 concludes | ||
| 4/24 | Lab 3 | ||
| 4/26 | |||
| 4/27 | 18 | Parameters | |
| . | |||
| 4/30 | 19.1-19.7 | A first look at Prolog | hw5 |
| 5/1 | 19.8-19.11 | More prolog | |
| 5/3 | 20.1-20.4 | Prolog implementation | |
| 5/4 | Lab 4: Parsing and Analysis in Prolog | ||
| . | |||
| 5/7 | 20.5-20.7 | More about Prolog | |
| 5/8 | Lab 4 continues | hw6 | |
| 5/10 | Lab 4 continues | ||
| 5/11 | Lab 4 continues | ||
| . | |||
| 5/14 | 21 | Cost models | |
| 5/15 | Lab 4 concludes | ||
| 5/17 | 23.1-23.3 | Natural semantics | |
| 5/18 | 23.4-23.6 | More on semantics | |
| . | |||
| 5/21 | 24 | History of programming languages | hw7 |
| 5/22 | Review/catch-up | Lab 4 |