15-150: Functional Programming, Summer 2020

Note: This page is under construction for Summer 2020; all topics and dates are in flux, as are the number and dates of exams.

Schedule of Lectures


Number  Date     Topics Covered Notes and Readings
∼1 (didn't meet) Course Policies & Setup   "Lecture ∼1" (negative 1)
 
0 18 May Welcome & Introduction   Lecture 0
1 19 May Programming in SML   Lecture 1
2 20 May Recursion & Induction   Lecture 2
3 21 May Lists & Structural Induction I   Lecture 3
4 22 May List & Structural Induction II   Lecture 4
 
25 May No lecture (Memorial Day)
5 26 May Asymptotic Analysis   Lecture 5
6 27 May Trees   Lecture 6
7 28 May Datatypes   Lecture 7
8 29 May Sorting Integer Trees   Lecture 8
 
9 01 Jun Polymorphism   Lecture 9 (slides)
10 02 Jun Higher-Order Functions
11 03 Jun Staging & Combinators
12 04 Jun Continuation Passing Style I
13 05 Jun Continuation Passing Style II
 
14 08 Jun Exceptions
15 09 Jun Regular Expressions
16 10 Jun Modules: Signatures & Structures
17 11 Jun Modules: Functors & Type Classes
18 12 Jun Modules: Red-Black Trees (case study)
 
19 15 Jun Sequences & Parallelism I
20 16 Jun Sequences & Parallelism II
21 17 Jun Two-Player Games I
22 18 Jun Two-Player Games II
23 19 Jun Imperative Programming
 
24 22 Jun Lazy Programming
25 23 Jun Applications & Further Topics
26 24 Jun Applications & Further Topics
27 25 Jun Review
26 Jun FINAL EXAM
There will be an online final exam on Gradescope.
More details will announced later.


The "Notes and Readings" field will usually be blank until it is updated for the lecture.

Disclaimer: All topics and dates are subject to change.

last modified 13:07, 01 Jun 2020