| Date | Description |
|---|---|
| September 29 |
Course introduction slides |
| October 1 | Regexps and scanners (slides from Thur. sec.) |
| October 4 |
Scanners (concl.); Grammars and ambiguity (start) (3.1-3.3) slides |
| October 6 | Grammars and ambiguity (concl.) |
| October 8 |
LR (bottom-up) parsing (3.4) slides |
| October 11 | LR parsing (concl.) |
| October 13 |
LR table construction (start) (3.5) slides |
| October 15 | LR conflicts, first/follow |
| October 18 |
ASTs & visitors; slides |
| October 20 |
LL Parsing & recursive descent (3.3) slides |
| October 22 |
Intro to semantics and type checking (4.1-4.2) slides |
| October 25 | Semantics; Attribute grammars (4.3) |
| October 27 | Symbol tables and representation of types |
| October 29 | Type checking / semantics wrapup; start x86-64 if time |
| November 1 |
x86-64 (everything you forgot from 351) x86-64 slides |
| November 3 | x86-64 (concl.) |
| November 8 |
Code shape I - basics slides |
| November 10 |
Code shape II - objects and dynamic dispatch slides |
| November 12 |
IRs slides |
| November 15 |
IRs (concl.) Optimization overview (start) slides |
| November 17 |
Project codegen bootstrap program; Opt. overview (cont.) slides |
| November 19 | Opt. overview (concl.) |
| November 22 |
Dataflow (start) slides |
| November 24 | Dataflow (concl.) |
| November 29 |
SSA (start) ssa: slides |
| December 1 | SSA (concl.) |
| December 3 |
Back end overview; instruction selection slides |
| December 6 | Instruction scheduling & register allocation (no new slides) |
| December 8 |
Dynamic languages slides |
| December 10 |
GC & course wrap up gc, wrapup |