15-150: Functional Programming, Summer 2024

Schedule of Lectures

ID Date Topics Notes
01 Tue, May 14 Types, Expressions, and Evaluation notes
02 Thu, May 16 Functions and Patterns notes
03 Tue, May 21 Recursion and Induction notes
04 Thu, May 23 Lists and Structural Induction notes
Fri, May 24 Induction Review Session resources
05 Tue, May 28 Datatypes and Trees notes
06 Thu, May 30 Cost Analysis notes
X1 Fri, May 31 Bonus: Cost Annotations and Phases notes
07 Tue, Jun 4 Sequential and Parallel Sorting notes
08 Thu, Jun 6 Polymorphism and Parameterized Datatypes notes
Fri, Jun 7 MIDTERM EXAM #1
09 Tue, Jun 11 Higher-Order Functions I notes
10 Thu, Jun 13 Higher-Order Functions II notes
Fri, Jun 14 Midterm 1 Solution Session
11 Tue, Jun 18 Lazy Programming (Remote) notes
Thu, Jun 20 Lab
12 Tue, Jun 25 Regular Expressions I notes
13 Thu, Jun 27 Regular Expressions II notes
14 Tue, Jul 2 Modules I: Signatures and Structures notes
Wed, Jul 3 MIDTERM EXAM #2
Thu, Jul 4 No Lecture (Independence Day 🎆)
15 Tue, Jul 9 Modules II: Functors and Type Classes notes
16 Thu, Jul 11 Modules III: Red-Black Trees notes
17 Tue, Jul 16 Sequences I: Introduction notes
18 Thu, Jul 18 Sequences II: Sorting notes
19 Tue, Jul 23 Imperative Programming I: Effects notes
20 Thu, Jul 25 Imperative Programming II: Mutable State notes
21 Tue, Jul 30 Amortized Analysis
22 Thu, Aug 1 Review
Fri, Aug 2 FINAL EXAM (Time TBA)

The "Notes" column 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.

last modified 17:59, 25 Jul 2024