Date | Reading | HW Due | Topics | Recording | Resources |
---|---|---|---|---|---|
Jan 9 | Introduction | (recording) | Rough lecture notes CS320 Lecture on compiler Structure | ||
Jan 11 | Ch. 1 | Preliminaries; Integers; Python idioms | (recording) | ||
Jan 16 | Ch. 2 | week1 | Code Review; Variables | (recording) | code review samples |
Jan 18 | Implementing Variables | (recording) | |||
Jan 23 | Ch. 4 | week2 | Code Review; Register Allocation | (recording) | code review samples |
Jan 25 | Register Allocation | (recording) | |||
Jan 30 | Ch. 5 | week3 | Code Review; Booleans and Control Flow | (recording) | code review samples |
Feb 1 | Implementing Booleans and Control Flow | (recording) | |||
Feb 6 | Ch. 6 | week4 | Code Review; Loops and Dataflow Analysis | (recording) | code review samples |
Feb 8 | Dataflow Analysis | (recording) | data flow analysis | ||
Feb 13 | (none) | Midterm (in class) | |||
Feb 15 | week5 | Optimization | (recording) | Optimization lecture notes Optimization Assignment instructions | |
Feb 20 | Ch. 7 | week6 | Code review; Tuples and Garbage Collection | (recording) | Book Ch. 7 Local Version (updated 2/20/24 3:40pm) |
Feb 22 | Implementing GC | (recording) | Garbage Collection lecture notes | ||
Feb 27 | Ch. 8 | week7 | Code review; More Garbage Collection | (recording) | code review samples |
Feb 29 | Functions; Implementing Functions | (recording) | Book Ch. 8 Local Version [updated 2/29/24 4:05pm] | ||
Mar 5 | (none) | Compiler Verification | (recording) | lecture notes Coq sources: (raw) (html) | |
Mar 7 | Java Virtual Machine and Interpretation | (recording) | lecture notes | ||
Mar 12 | Nystrom Ch.2 | week8 | Bytecode and efficient interpretation | (recording) | |
Mar 14 | Execution Architectures | (recording) | Comparison of different IRs (.zip file) | ||
Mar 19 | Final exam (5:30-7:20pm) |