| Date | Description |
|---|---|
| March 27 |
Course introduction slides |
| March 29 |
Intro. to parsing; regexps and scanning (Read ch. 1, 2.1-2.4) slides |
| March 31 | regexps & FAs (cont.) |
| April 3 |
Scanners (concl.); Grammars and ambiguity (start) (3.1-3.2) slides |
| April 5 |
Grammars and ambiguity (concl.); LR (bottom-up) parsing (start) (3.4) slides |
| April 7 | LR parsing (cont.) |
| April 10 |
LR parsing (concl.); LR table construction (3.5) slides |
| April 12 | LR conflicts, first/follow (no new slides) |
| April 14 |
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 21 | Symbol tables and representation of types |
| April 24 | Type checking / semantics wrapup |
| April 26 |
x86-64 (everything you forgot from 351) slides |
| April 28 |
x86-64 function calls; Code shape I - basics (start) slides |
| May 1 |
Code shape I (concl); Code shape II - objects and dynamic dispatch (start) slides |
| May 3 | Code Shape II (concl.) |
| May 8 |
IRs slides |
| May 10 |
Opt. overview opt slides |
| May 12 |
Opt. overview (concl.); Dataflow (start) slides |
| May 15 | Dataflow (concl.) |
| May 17 |
SSA (start); project codegen & bootstrap (start) SSA slides, codegen slides |
| May 19 | SSA (cont.) - no new slides |
| May 22 |
Back end overview; instruction selection slides |
| May 24 | Instruction scheduling & register allocation (no new slides) |
| May 26 | No lecture today - extended office hours in CSE 303 instead |
| May 31 |
Dynamic languages slides |
| June 2 |
GC & course wrap up slides: gc, wrapup |