15-150: Functional Programming, Summer 2025


Schedule of Lectures

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.

last modified 16:26, 05 Jun 2025