NOTE: Schedule is subject to change.
Key to readings: M = Mitchell; W = Winskel; K = Krishnamurthi; P = Pierce. The readings are not required, but may help your understanding of the lecture material.
Many of the lecture notes here contain material from lecture notes of courses taught by Radu Rugina and Andrew Myers.
Lec. | Date | Topic | Readings | Notes | Assignments |
---|---|---|---|---|---|
Dynamic semantics | |||||
1 | 26-Jan | Intro to semantics Small-step semantics |
W Ch. 2,3,4. | PDF (updated 10-Feb) |
|
2 | 28-Jan | Inductive definitions and proofs | |||
3 | 2-Feb | Large-step semantics IMP: an imperative language |
PDF (updated 10-Feb) |
HW 1 out | |
4 | 4-Feb | Large-step operational semantics for IMP | |||
5 | 9-Feb | Denotational semantics | W Ch. 5. M 4.3. |
||
6 | 11-Feb | Denotational semantics ctd. Axiomatic semantics |
HW 1 due | ||
7 | 16-Feb | Axiomatic semantics ctd. | W Ch. 6 | HW 2 out | |
8 | 18-Feb | Lambda calculus | M 4.2 | ||
9 | 23-Feb | Lambda calculus encodings Recursion |
K Ch 22. | ||
Language features | |||||
10 | 25-Feb | Definitional translation | |||
11 | 2-Mar | References Continuation passing style |
M Ch. 8. | HW 2 due HW 3 out |
|
12 | 4-Mar | Control-flow constructs Scope |
|||
Static semantics | |||||
13 | 9-Mar | Simply-typed lambda calculus Type soundness |
M 6.1, 6.2. K Chs 24-26. P Ch 9 |
||
14 | 11-Mar | More types | P Chs 11, 13 | HW 3 due | |
Spring Recess | |||||
15 | 23-Mar | MID TERM EXAM | HW 4 out | ||
16 | 25-Mar | Records and subtyping | P 11.8, 15 | PDF (updated 15-Apr) |
|
17 | 30-Mar | Parametric polymorphism | P 23; M 6.4. | PDF (updated 15-Apr) |
|
18 | 1-Apr | Dependent types (Guest lecturer: Jeff Vaughan) | P 30.5 | ||
19 | 6-Apr | Type inference Curry-Howard isomorphism |
P 22; M 6.3 | PDF (updated 15-Apr) |
HW 4 due |
20 | 8-Apr | Abstract interpretation | PDF (updated 26-Apr) |
HW 5 out | |
More language features, and programming paradigms | |||||
21 | 13-Apr | Modules | M 9.3, P 24 | ||
22 | 15-Apr | Object-oriented concepts | M Ch. 10. | ||
23 | 20-Apr | Logic programming | M Ch. 15. | ||
24 | 22-Apr | Term paper reports | |||
25 | 27-Apr | Current trends in PL research | HW 5 due |