Compilers and Language Design Course at the University of Notre Dame
Prof. Douglas Thain (dthain@nd.edu )Office Hours: 1-3PM Mon/Thu Office: 384 Fitpatrick Hall |
|
TA: Colin Thomas (cthoma26@nd.edu )Office Hours: 3-5PM Mon/Wed Office: 150B Fitpatrick Hall (Student Commons) |
|
TA: David Simonetti (dsimone2@nd.edu )Office Hours: 3-5PM Tue/Thu Office: 150B Fitpatrick Hall (Student Commons) |
Douglas Thain, Introduction to Compilers and Language Design, 2nd edition, 2021. http://compilerbook.org |
(Subject to change as needed.)
Week | Reading | Monday | Wednesday | Thursday | Friday | Extra Links |
---|---|---|---|---|---|---|
Aug 21 | Ch 1-2 | Intro | Overview | Syllabus | ||
Aug 28 | Ch 3 | Regular Expressions HW1 Due |
Finite Automata | Encoder Due | RE->NFA | Hand Parser Regex 101 Regex Golf Unicode |
Sep 4 | Ch 3 | NFA->DFA | Flex | HW2 Due | Context Free Grammars | Flex Scanner Generator |
Sep 11 | Ch 4.1-4.3 | Context Free Grammars | LL(1) Grammars | Scanner Due | Recursive Descent | |
Sep 18 | Ch 4.4-4.6 | LL(1) Table Parsing | Shift-Reduce Parsing | HW3 Due | LR(0) Automaton | |
Sep 25 | Ch 5 | SLR Parsing | LR(1) Parsing | Bison | Bison Examples | |
Oct 2 | Ch 5 | Parsing B-Minor HW4 Due |
Parsing B-Minor | Abstract Syntax Tree | AST Handout | |
Oct 9 | Ch 6 | Abstract Syntax Tree | Review Parser Due |
Midterm Exam | ||
Oct 16 | Fall Break | Fall Break | Fall Break | Fall Break | ||
Oct 23 | Ch 7 | AST / Printing | Type Systems | Name Resolution | ||
Oct 30 | Ch 7 | Typechecking Printer Due |
Typechecking | Typechecking | ||
Nov 6 | Ch 9 | Memory Org | Memory Org | Resolver Due | Memory Org | |
Nov 13 | Ch 10 | Assembly | Assembly | Typecheck Due | Assembly | Intel Manuals Calling Convention |
Nov 20 | Ch 11 | Codegen | Thanksgiving | Thanksgiving | Thanksgiving | |
Nov 27 | Ch 11 | Codegen | Codegen. | Codegen | ||
Dec 4 | Catch Up | Review | Codegen Due | |||
Dec 11 | Final Exam 8-10AM |