15-150: Functional Programming, Summer 2018

Schedule of Lectures

Number  Date     Topics Covered Notes and Readings
01 21 May Introduction and Overview   notes
02 22 May SML Basics   notes   Notes on evaluation (from Mike Erdmann)
03 23 May Recursion and Structural Induction   notes
04 24 May Lists, Structural Induction   notes
05 25 May Datatypes, Trees   notes  more on structural induction
 
28 May Memorial Day - No Lecture
06 29 May Asymptotic Analysis   notes
07 30 May Sequential Sorting   notes  proofs
08 31 May Parallel Sorting   notes
09 01 Jun Polymorphism and Parametrized Datatypes   notes
 
10 04 Jun Domain-Specific Datatypes and Higher-order Functions I   notes
11 05 Jun Higher-Order Functions   notes
12 06 Jun Tail Recursion, Continuations   notes
13 07 Jun Exceptions   notes
14 08 Jun Regular Expressions   notes
 
15 11 Jun Regular Expressions (cont.)
16 12 Jun Modular Programming I: Signatures and Structures   notes
13 Jun MIDTERM EXAM
17 14 Jun Modular Programming II: Functors   notes
18 15 Jun Modular Programming III: Invariants of Red/Black Trees   slides
 
19 18 Jun Parallelism, Cost Semantics, Sequences   notes
20 19 Jun Case Study on Parallelism   notes
21 20 Jun Case Study: Two Person Games   notes
22 21 Jun Case Study: Two Person Games (cont.)   alpha-beta slides
23 22 Jun Laziness and Imperative Programming   notes
 
24 25 Jun Imperative Programming (cont.)   notes
25 26 Jun Effects and Parallelism   notes
26 27 Jun Extended Topics: Algebraic Datatypes and their Calculus   notes
27 28 Jun Review   notes
29 Jun FINAL EXAM


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

Disclaimer: All topics and dates are subject to change.

last modified 16:35, 28 Jun 2018
Valid CSS! Valid XHTML 1.0 Strict