| Date | Description |
|---|---|
| March 25 |
Course introduction slides |
| March 27 |
Intro. to parsing; regexps and scanning (Read ch. 1, 2.1-2.4) slides |
| March 29 | regexps & FAs (cont.) |
| April 1 |
Scanners (concl.); Grammars and ambiguity (start) (3.1-3.2) slides |
| April 3 | Grammars and ambiguity (concl.) |
| April 5 |
LR (bottom-up) parsing (start) (3.4) slides |
| April 8 | LR parsing (concl.) |
| April 10 |
LR table construction (3.5) slides |
| April 12 | LR conflicts, first/follow (no new slides) |
| April 15 |
ASTs & visitors slides |
| April 17 |
LL Parsing & recursive descent (3.3) slides |
| April 19 |
Intro to semantics and type checking (4.1-4.2) slides |
| April 22 | Symbol tables and representation of types (no new slides) |
| April 24 | Type checking / semantics wrapup (no new slides) |
| April 26 |
IRs slides |
| April 29 |
x86-64 (everything you forgot from 351) slides |
| May 1 | x86-64 function calls; Code shape I - basics (start) |
| May 6 |
Code shape I slides |
| May 8 |
Code shape II - objects and dynamic dispatch (start) slides |
| May 10 | Code shape II (concl.) |
| May 13 |
Opt. overview (start) slides |
| May 15 |
Opt. overview (concl); project codegen & bootstrap (start) codegen slides |
| May 17 |
Dataflow (start) slides |
| May 20 |
Dataflow (concl.); SSA (start) SSA slides |
| May 22 | SSA (concl.) - no new slides |
| May 24 |
Back end overview; instruction selection slides |
| May 29 | Instruction scheduling & register allocation (no new slides) |
| May 31 |
GC & course wrap up slides: gc, wrapup |