| August 2010 | ||||||
| Sunday | Monday | Tuesday | Wednesday | Thursday | Friday | Saturday |
| 1 | 2 | 3 | 4 | 5 | 6 | 7 |
| 8 | 9 | 10 | 11 | 12 | 13 | 14 |
| 15 | 16 | 17 | 18 | 19 | 20 | 21 |
| 22 | 23 | 24 Class 1: Introduction to Programming Languages Monday Schedule |
25 Class 2: Intro to Scheme & Functional Programming |
26 | 27 Lab 1: Scheme: more intro |
28 |
| 29 | 30 Class 3: Scheme Lists I Scheme Lab 1 due |
31 | ||||
| September 2010 | ||||||
| Sunday | Monday | Tuesday | Wednesday | Thursday | Friday | Saturday |
| 1 Class 4: Scheme Lists II Scheme Lab 2 due |
2 | 3 Lab 2: Scheme: first-class functions, map, apply, eval Scheme Lab 3 due |
4 | |||
| 5 | 6 Labor Day |
7 | 8 Class 5: Scheme: list internals, tail-recursion, letrec Scheme Labs 4 and 5 due |
9 | 10 Lab 3: Breaking the functional paradigm Scheme Labs 4 and 5 due (1 day late) |
11 |
| 12 | 13 Class 6: Specifying syntax Scheme HW due Scheme Lab 6 due |
14 | 15 Class 7: Scanning |
16 | 17 Lab 4: Tokenization and Parsing Scheme Lab 8 due |
18 |
| 19 | 20 Class 8: Parsing: top-down, bottom-up |
21 | 22 Class 9: Parsing - Recursive descent / table-driven top-down |
23 | 24 Lab 5: Parse Lab I |
25 |
| 26 | 27 Class 10: Parsing - Shift-Reduce and SLR Parsing. NOTE: some typos online. See corrected version passed out in class. |
28 | 29 6 Week Exam |
30 | ||
| October 2010 | ||||||
| Sunday | Monday | Tuesday | Wednesday | Thursday | Friday | Saturday |
| 1 Lab 6: Parse Lab II |
2 | |||||
| 3 | 4 Exam Debrief (6 Weeks in 1 day!) |
5 6Wk Grades Due |
6 Class 11: Parsing - First and Follow and more SLR HW11 solution |
7 6Wk MAPRS Due |
8 Lab 7: LR Parsing & Assoc/Prec |
9 |
| 10 | 11 Columbus Day |
12 | 13 Class 12: Semantic Analysis I |
14 | 15 Lab 8: Abstract Syntax Trees |
16 |
| 17 | 18 Class 13: Names, scopes, lifetimes I |
19 | 20 Class 14: Names, scopes, lifetimes II |
21 | 22 Lab 9: Interpreting an Abstract Syntax Tree |
23 |
| 24 | 25 Class 15: Names, scopes, lifetimes III |
26 | 27 Class 16: Built-ins, scripting applications, etc |
28 | 29 Lab 10: Scripting WormWorld (tips/gotchas) |
30 |
| 31 | ||||||
| November 2010 | ||||||
| Sunday | Monday | Tuesday | Wednesday | Thursday | Friday | Saturday |
| 1 Class 17: Closures and lexical scope with Frames |
2 | 3 Class 18: Static vs. Dynamic Typing: Implementation |
4 | 5 Lab 11: Implementing lexical scoping with frames |
6 | |
| 7 | 8 12 Week Exam |
9 12Wk Grades Due |
10 Exam Debrief |
11 Veteran's Day |
12 Lab 12: Dynamic Type Checking |
13 |
| 14 | 15 Comp. time |
16 | 17 Class 19: Expressions and assignments |
18 | 19 Lab 13: Garbage Collection |
20 |
| 21 | 22 Class 20: More on l-values vs. r-values |
23 | 24 Class 21: Macros vs. functions, applicative vs. normal order evaluation |
25 Thanksgiving |
26 Digestion Day |
27 |
| 28 | 29 Class 22: Function call to function body (hopefully a bit of Implementing virtual functions) |
30 | ||||
| December 2010 | ||||||
| Sunday | Monday | Tuesday | Wednesday | Thursday | Friday | Saturday |
| 1 Class 23: Gotos considered interesting |
2 | 3 Lab 14: Compiling for a Virtual Machine |
4 | |||
| 5 | 6 Class 24: SEIC: Security & Society & Programming Languages |
7 | 8 | 9 | 10 Lab 15: Finishing Compiling for a Virtual Machine |
11 |
| 12 | 13 VM Lab 15 due (0800) Study Day |
14 SI413 final exam (1930, in MI303) |
15 | 16 | 17 | 18 |
| 19 | 20 | 21 Last Day of Exams |
22 | 23 | 24 | 25 |
| 26 | 27 | 28 | 29 | 30 | 31 | |