Schedule
This is a tentative schedule. There will likely be changes and we will try to keep this page up to date.
Week | Date | Event | Topic | Assignments |
---|---|---|---|---|
1 | ||||
Aug 27 | Lecture 01 | Overview / Lambda Calculus | ||
Aug 29 | Lecture 02 | Programming in the Lambda Calculus | ||
2 | ||||
Sep 3 | Lecture 03 | Recursion in the Lambda Calculus | Hw 1 out | |
Sep 5 | Lecture 04 | Inference Rules and Definition of Substitution | ||
3 | ||||
Sep 10 | Lecture 05 | System T: Static Semantics and Type Soundness | Hw 1 due / Hw 2 out | |
Sep 12 | Lecture 06 | Normalization, Definability, Undefinability | ||
4 | ||||
Sep 17 | Lecture 07 | Products and Sums | Hw 2 due / Hw 3 out | |
Sep 19 | Lecture 08 | Inductive Data Types | ||
5 | ||||
Sep 24 | Lecture 09 | Parametric Polymorphism: System F | Hw 3 due / Hw 4 out | |
Sep 26 | Lecture 10 | System F; Co-Inductive Data Types | ||
6 | ||||
Oct 1 | Lecture 11 | Eager and Lazy Evaluation: PCF | Hw 4 due / Hw 5 out | |
Oct 3 | Lecture 12 | Recursive Types | ||
7 | ||||
Oct 8 | Lecture 13 | Dynamic Types | Hw 5 due | |
Oct 10 | Midterm | Open book; during class | ||
Oct 15 | Fall Break | |||
Oct 17 | Fall Break | |||
8 | ||||
Oct 22 | Lecture 14 | Evaluation Dynamics and the K Machine | Hw 6 out | |
Oct 24 | Lecture 15 | Exceptions in the K Machine | ||
9 | ||||
Oct 29 | Lecture 16 | Parametricity | Hw 6 due / Hw 7 out | |
Oct 31 | Lecture 17 | Applications of Parametricity | ||
10 | ||||
Nov 5 | Democracy Day | |||
Nov 7 | Lecture 18 | Types as Propositions | Hw 7 due / Hw 8 out | |
11 | ||||
Nov 12 | Lecture 19 | Substructural Type Systems | ||
Nov 14 | Lecture 20 | Characterizing PTIME with LFPL | Hw 8 due / Select MP | |
12 | ||||
Nov 19 | Lecture 21 | Automatic Amortized Resource Analysis | ||
Nov 21 | Lecture 22 | Resource Aware ML | ||
13 | ||||
Nov 26 | Thanksgiving Break | |||
Nov 28 | Thanksgiving Break | |||
14 | ||||
Dec 3 | Lecture 23 | Session Types | ||
Dec 5 | Project Day | MPs are due on Dec 7 |