Number | Date | Topics Covered | Notes and Readings |
---|---|---|---|
01 | 13 May | Introduction, Equivalence, Evaluation, Typing, Binding, Scope | lecture 01 |
02 | 15 May | Functions and Patterns | lecture 02 |
03 | 20 May | Recursion and Induction | lecture 03 |
04 | 22 May | Lists, Tail Recursion, Structural Induction | lecture 04 |
05 | 27 May | Datatypes, Trees and Structural Induction | lecture 05 |
06 | 29 May | Asymptotic Analysis | lecture 06 |
07 | 3 Jun | Sequential and Parallel Sorting | lecture 07 |
08 | 5 Jun | Polymorphism and Parameterized Datatypes | lecture 08 |
09 | 10 Jun | Higher-Order Functions | |
10 | 12 Jun | Combinators, Staging | 11 | 17 Jun | Continuations |
19 Jun | JUNETEENTH | ||
12 | 24 Jun | Regular Expressions I | |
13 | 26 Jun | Regular Expressions II, Exceptions | |
14 | 1 Jul | Modular programming I: Signatures and Structures | |
3 Jul | NO LECTURE | ||
15 | 8 Jul | Modular programming II: Functors | |
16 | 10 Jul | Modular programming III: Invariants of Red/Black Trees | |
17 | 15 Jul | Parallelism, Cost Semantics, Sequences | |
18 | 17 Jul | Lazy programming | |
19 | 22 Jul | Imperative programming | |
20 | 24 Jul | Review | |
21 | 29 Jul | TBD | |
22 | 31 Jul | TBD | |
1 Aug | FINAL EXAM TIME TBA |
The "Notes and Readings" field will usually be blank until it is updated after the given day's lectures (generally by evening).
Disclaimer: All topics and dates are subject to change.