15-150: Functional Programming, Summer 2023


Schedule of Lectures

Number    Date        Topics Covered Notes and Readings
01 16 May Prologue   lecture 01
02 18 May Equivalence, Binding, Scope   lecture 02
03 23 May Induction and Recursion   lecture 03
04 25 May Structural Induction and Tail Recursion   lecture 04
05 30 May Trees   lecture 05
06   1 Jun Asymptotic Analysis   lecture 06
07   6 Jun Sorting and Parallelism   lecture 07
08   8 Jun Polymorphism   lecture 08
12 Jun MIDTERM EXAM #1
09 13 Jun Higher-Order Functions
10 15 Jun Combinators and Staging
11 20 Jun Continuation-Passing Style
12 22 Jun Exceptions
13   3 Jul Regular Expressions
14   6 Jul Modules I
15 11 Jul Modules II
16 13 Jul Modules III
17 Jul MIDTERM EXAM #2
17 20 Jul Parallelism and Sequences
18 25 Jul Lazy Programming
19 27 Jul Imperative Programming
20   1 Aug Special Topics: Compilers
21   3 Aug Special Topics: Program Analysis
22   8 Aug Final Review
11 Aug FINAL EXAM


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 02:44, 08 Jun 2023