Meeting # | Date | Topic | Readings and Assignments |
---|---|---|---|
1 | 1/3/2018 | None (first day) | |
2 | 1/5/2018 | ||
3 | 1/8/2018 | ||
4 | 1/10/2018 |
PA1c Due |
Dragon Book Ch 3 PL Pragmatics Ch 2.1 - 2.2 |
5 | 1/15/2018 |
MLK Day -- no class
|
|
6 | 1/17/2018 |
Lexical Analysis Foundations and Lexical Analyzer Generators (aka lex/Flex) PA1 (Rosetta Toposort) Due Kevin Leach at PI meeting |
Flex Manual Aho (Dragon Book) 3.6-3.7 |
7 | 1/22/2018 |
Dragon book Ch 4.1, 4.2 PL Pragmatics Ch 2.3 |
|
8 | 1/24/2018 |
PA2 (Lexer) Due |
Dragon book Ch 4.3, 4.4 PL Pragmatics Ch 2.3.1-2.3.4 |
9 | 1/29/2018 | PL Pragmatics Ch 4.8 |
|
10 | 1/31/2018 | Yacc or Bison Manual | |
11 | 2/5/2018 | Midterm 1 | |
12 | 2/7/2018 |
PA3 (Parser) Due |
PL Pragmatics Ch. 3.2.1, 3.2.1-3.2.3, 3.6 Dragon book Ch. 1.6.1, 1.6.2, 1.6.5, 1.6.6, 1.6.7 |
2/9/2018 | |||
13 | 2/12/2018 | Type Checking (Video) |
PL Pragmatics 4.2, 4.3, 4.6 Dragon book Ch. 6.5 |
14 | 2/14/2018 | Type Checking (2) (Video) |
PL Pragmatics Ch. 8.1 - 8.3 Dragon Book Ch. 7.2 - 7.3 |
15 | 2/19/2018 |
PL Pragmatics 9.2 Dragon Book Ch. 6, 6.1, 6.2, 6.3 |
|
16 | 2/21/2018 |
Intermediate Representation (Video) PA4 (Semantic Analyzer) due |
Dragon book Ch. 6.4, 6.6 |
17 | 2/26/2018 | No class, break | |
18 | 2/28/2018 | No class, break | |
19 | 3/5/2018 | ||
20 | 3/7/2018 |
PL Pragmatics Ch. 5.2, 5.4, 5.6, 9.4, 9.5 |
|
21 | 3/12/2018 |
PL Pragmatics 14.1.1, 14.2, 14.3.1 Dragon Book Ch. 9.2.1 - 9.2.3, 9.2.5 |
|
22 | 3/14/2018 | Dragon Book Ch. 9.3 | |
23 | 3/19/2018 |
Midterm 2 |
|
24 | 3/21/2018 | Dragon Book Ch. 7.4, 7.5 |
|
F2 | 3/23/2018 |
Friday with Ram |
|
25 | 3/26/2018 |
Memory Hierarchy, Register Allocation, and Linking and Loading (Video) |
PL Pragmatics Ch. 14.6, 14.7 |
26 | 3/28/2018 | PL Pragmatics Ch. 15.3.2 | |
27 | 4/2/2018 |
PA5 (Compiler) Due |
Wikipedia's Basic Block article Wikipedia's Data-flow analysis article |
28 | 4/4/2018 |
Wikipedia's Basic Block article Wikipedia's Data-flow analysis article |
|
29 | 4/9/2018 |
PL Pragmatics Ch. 8.5 |
|
30 | 4/11/2018 | Reflections on Trusting Trust | |
31 | 4/16/2018 |
Slack day: Security and Compilers |
|
N/A | 4/24/2018 |
Final Exam, 4-6pm, CHRYS220 PA6 (optimizer) Due at 6pm |