The calendar below provides information on the course's lecture, recitation, one-on-one meeting, project, and quiz sessions. For the one-on-one meetings, students read assigned papers and discuss the papers in individual meetings with the professors or teaching assistants.
Calendar Legend
L: Lecture
P: Project
R: Recitation
Q: Quiz
M: Meeting
(S): Session taught by Professor Saman Amarasinghe
(M): Session taught by Professor Martin Rinard
WeEK # | DAY 1 | DAY 2 | DAY 3 | DAY 4 |
---|---|---|---|---|
1 | L1: Course Administration Information and Overview (S) | P1: Scanner/Parser Assigned R1: Scanner Parser Project |
||
2 | L2: Overview of Programming Languages (M) | L3: Regular Expressions, Language Specification by Formal Grammars (M) | L4: Parse Table Construction (M) | L5: Top-down Parsing (M) |
3 | P1: Scanner/Parser Project Due P2: Semantic Checker Project Assigned |
R2: Project Information Session | ||
4 | L6: Intermediate Representations (M) | L7: Semantic Analysis (M) | ||
5 | Q1: In-class Quiz | M1: One-on-One Meeting | M1: One-on-One Meeting (cont.) | P2: Semantic Checker Project Due P3: Code Generator Project Assigned |
6 | R3: Project Information Session | L8: Unoptimized Code Generation (S) M2: One-on-One Meeting |
||
7 | L9: Unoptimized Code Generation (cont.) (S) M2: One-on-One Meeting (cont.) |
|||
8 | P3: Code Generator Project Checkpoint | |||
9 | P3: Code Generator Project Due L10: Introduction to Program Analysis and Optimization (M) P4: Data-flow Optimizer Project Assigned |
L11: Data-flow Analysis (M) | L12: Data-flow Optimizations (M) M3: One-on-One Meeting |
L13: Foundations of Data-flow Analysis (M) M3: One-on-One Meeting (cont.) |
10 | Q2: In-class Quiz | R4: Project Information Session | ||
11 | P4: Data-flow Optimizer Project Checkpoint | |||
12 | P4: Data-flow Optimizer Project Due P5: Instruction Optimizer Project Assigned |
|||
13 | R5: Project Information Session | L14: Instruction Scheduling (S) | L15: Instruction Scheduling (cont.) (S) | L16: Register Allocation (S) |
14 | L17: Putting it all Together (S) | Q3: In-class Quiz | ||
15 | P5: Instruction Optimizer Project Due | L18: Compiler Derby (S) |