Schedule
Lecture Material
Week |
| Tuesday |
| Thursday |
Aug 28 |
|
| ||
Sep 4 |
| Lexing and Parsing, 03-examples.tar.gz, Project 1: OCaml Warmup |
| Lexing and Parsing, In-class exercise |
Sep 11 |
| Lexing and Parsing, LR(0) DFA Example, In-class exercise |
| Lexing and Parsing, LR(1) DFA Example |
Sep 18 |
|
| Operational Semantics | |
Sep 25 |
| Operational Semantics, 04-op-sem.ml, In-class exercise |
| |
Oct 2 |
| Midterm Review |
| Midterm 1, Project 3: RubeVM Interpreter |
Oct 9 |
|
| Code Generation | |
Oct 16 |
| Code Generation |
| |
Oct 23 |
| Optimization, Data Flow Analysis, In-class exercise |
| Data Flow Analysis, In-class exercise |
Oct 30 |
|
| ||
Nov 6 |
| Type Systems, Project 5: Rube Compiler |
| Symbolic Execution, se.ml, se2.ml, Types practice, Solutions |
Nov 13 |
| Midterm Review |
| Midterm 2 |
Nov 20 |
| Exam Discussion |
| Thanksgiving |
Nov 27 |
|
| ||
Dec 4 |
| P5, Continuations, Web Assembly |
| Final Exam Review |
Dec 11 |
| No Class |
| Final Exam: 8:00am-10:00am |
Programming Projects
Midterms
Fall 2018 - Midterm 1 (sample solution)
Fall 2018 - Midterm 2 (sample solution)
Fall 2016 - Midterm 2 (sample solution)
Fall 2016 - Midterm 1 (sample solution)
Fall 2015 - Midterm 1 (sample solution)
Spring 2015 - Practice Midterm 2.
Spring 2015 - Midterm 1 (sample solution)
Spring 2015 - Practice Midterm 1 (sample solution)
Fall 2014 - Midterm 1 (sample solution)
Fall 2014 - Midterm 2 (sample solution)
Fall 2013 - Midterm 1 (sample solution)
Fall 2013 - Midterm 2 (sample solution)
Fall 2012 - Midterm 1 (sample solution)
Fall 2012 - Midterm 2 (sample solution)
Spring 2012 - Midterm 1 (sample solution)
Spring 2012 - Midterm 2 (sample solution)