Schedule
| Lecture Hours: | 1:15 PM - 2:45 PM on Tuesdays and Thursdays |
| Lecture Location: | Science Center 183 |
| Lab Location: | Science Center 240 |
Calendar
The following is a tentative course calendar; it is subject to change as circumstances dictate.
Captured videos of lecture are linked in the calendar below. The corresponding resources created during those lectures can be found in the Lecture Materials.
| WEEK | DAY | ANNOUNCEMENTS | TOPIC | ASSIGNMENTS | |
|---|---|---|---|---|---|
| 1 | Jan 22 | Introduction to Compilers and OCaml | |||
Jan 24 |
Lab Activity (Jan 28) | OCaml Data Types and Recursion | |||
| 2 | Jan 29 | Higher-Order Functions in OCaml | |||
Jan 31 |
Drop/add ends (Feb 01) | Syntax and Compilation | |||
| 3 | Feb 05 | Arithmetic Operations and Allocation | |||
Feb 07 | Bindings and Scope | ||||
| 4 | Feb 12 | Value Tagging | |||
Feb 14 | C Calling Conventions; Runtime Errors | ||||
| 5 | Feb 19 | Functions | |||
Feb 21 | Compile-time Errors | ||||
| 6 | Feb 26 | Heap Allocation and Pairs | |||
Feb 28 | |||||
| 7 | Mar 05 | System Calls | |||
Mar 07 | Register Allocation | ||||
Mar 12 | Spring Break | ||||
Mar 14 | |||||
| 8 | Mar 19 | First-Class Functions and Closures | |||
Mar 21 |
Take-Home Mid-Term Due (Mar 22) | ||||
| 9 | Mar 26 | ||||
Mar 28 |
CR/NC/W Deadline (Mar 29) | Memory Management Overview | |||
| 10 | Apr 02 | Manual Memory Management | |||
Apr 04 | Mark/Compact | ||||
| 11 | Apr 09 | Garbage Collection Strategies | |||
Apr 11 | Tail Call Optimization | ||||
| 12 | Apr 16 | ||||
Apr 18 | LL Parsing and Left Recursion | ||||
| 13 | Apr 23 | ||||
Apr 25 | LR Parsing | ||||
| 14 | Apr 30 | Type Systems | |||
May 02 | |||||
May 09 | |||||