| Date | Description |
|---|---|
| September 25 |
Course introduction slides |
| September 27 |
Regexps and scanning slides (same as Thur. sections) |
| September 30 |
Scanners (concl.); Grammars and ambiguity (start) (3.1-3.2) slides |
| October 2 | Grammars and ambiguity (concl.) |
| October 4 |
LR (bottom-up) parsing (start) (3.4) slides |
| October 7 |
LR parsing (concl.); LR table construction (3.5) start slides |
| October 9 | LR table construction (3.5) (cont.) |
| October 11 | LR conflicts, first/follow (no new slides) |
| October 14 |
ASTs & visitors slides |
| October 16 |
LL Parsing & recursive descent (3.3) slides |
| October 18 |
Intro to semantics and type checking (4.1-4.2) slides |
| October 21 | Symbol tables and representation of types (no new slides) |
| October 23 | Type checking / semantics wrapup (no new slides) |
| October 25 |
IRs slides |
| October 28 |
x86-64 (everything you forgot from 351) slides |
| October 30 | x86-64 function calls |
| November 4 |
Code shape I - basic constructs slides |
| November 6 |
Code shape I (concl.); II - objects and dynamic dispatch (start) slides |
| November 8 | Code shape II (concl.) |
| November 13 |
Opt. overview (start); project codegen & bootstrap (start) codegen slides, opt overview |
| November 15 | Opt. overview (concl) |
| November 18 |
Dataflow (start) slides |
| November 20 |
Dataflow (concl.); SSA (start) SSA slides |
| November 22 | SSA (concl.) - no new slides |
| November 25 |
Back end overview; instruction selection slides |
| November 27 |
Dynamic languages slides |
| December 2 | Instruction scheduling & register allocation (no new slides) |
| December 4 |
GC & course wrap up slides: gc, wrapup |
| December 6 | No class; Extra office hours in lecture room during class time |