Date | Topic (and notes, when available) | Homework Due This Class | Reading For This Class |
Mon Jan 13 | Course Overview | ||
Wed Jan 15 |
History of PL
Functional Programming |
Required:
| |
Mon Jan 20 | no class, MLK Day |
| |
Wed Jan 22 |
Functional Programming
Overview of Cool | Required: | |
Mon Jan 27 | Lexical Analysis & Finite Automata (Part 1) |
|
Required:
|
Wed Jan 29 | More Finite Automata (Part 2) |
On-Line:
| |
Mon Feb 03 | Context-Free Grammars, Parsing, Derivations, Ambiguity |
|
Required:
|
Wed Feb 05 | Top-Down Parsing, History, Earley |
|
Required:
|
Mon Feb 10 | Earley Parsing and Examples |
|
Required:
|
Wed Feb 12 | Midterm 1 (in class)
(1 hour 30 minutes if needed) |
| |
Mon Feb 17 | Code Generation (Part 1) |
|
Required:
|
Wed Feb 19 | Code Generation (Part 2) | Required for Compilers Only: | |
Mon Feb 24 | Scoping & Types |
|
Required:
|
Wed Feb 26 | Type Checking & Static Semantics |
Required:
| |
Mon Mar 03 | no class, snow day |
| |
Wed Mar 05 | More Static Semantics |
|
Required:
|
Mon Mar 17 | no class, snow day | ||
Wed Mar 19 | Cool Type Checking, Runtime Organization |
|
Required:
|
Mon Mar 24 | Multi-Language Projects |
| Required: Optional: |
Wed Mar 26 | Operational Semantics |
Required:
| |
Sun Mar 30 Thn E303 (same time/room) | Introduction to Game Theory | Optional: | |
Mon Mar 31 | Basic Blocks, Local Optimizations |
|
Required:
On-Line:
|
Wed Apr 02 | Dataflow Analysis, Global Optimizations | Required: Required for Compilers Only: | |
Mon Apr 07 | Automatic Memory Management |
|
Required:
|
Wed Apr 09 | Exceptions and Error Handling |
|
Required:
|
Mon Apr 14 | Debuggers and Profilers |
|
Required:
|
Wed Apr 16 | Linking, Loading and Shared Libraries |
Required:
| |
Mon Apr 21 |
Midterm 2 (in class)
(1 hour 30 minutes if needed) | ||
Wed Apr 23 | Language Security | Required: | |
Mon Apr 28 | Internet Security |
Required:
On-Line:
| |
Wed Apr 30 Thn E303 (same time/room) | Quantum Computing, and/or Romance Novels | ||
Mon May 05 |
|