15-150: Functional Programming, Summer 2016

Schedule of Lectures

Number  Date     Topics Covered Notes and Readings
01 16 May Overview   lecture 01
02 17 May Basics: Evaluation, Types, Val, Functions   lecture 02
03 18 May Recursion and Induction   lecture 03
04 19 May Lists, Structural Induction   lecture 04
05 20 May Asymptotic Analysis   lecture 05
06 23 May Sequential Sorting   lecture 06
07 24 May Parallel Sorting   lecture 07
08 25 May Polymorphism,parametrized datatypes, type inference, specs and checks   lecture 08
09 26 May Higher-order functions, Options, Domain-Specific Types   lecture 09
10 27 May Higher-Order Functions II (Currying, Shrubs, Composition)   lecture 10
11 31 May Functions as Data, Tail Recursion, Continuations   lecture 11
12,13,14 1-3 Jun Regular Expressions, Proof-Directed Debugging, Staging   lecture 12-14
EDIT: 6 Jun MIDTERM EXAM
15 7 Jun Exceptions   lecture 15
16 8 Jun Modular programming I: Signatures and Structures   lecture 16
17 9 Jun Cost Semantics, Scheduling, Sequences   lecture 17
18 10 Jun n-body   lecture 18
19 13 Mar Dictionaries, Functors   lecture 19
20 14 Jun Invariants: Red-Black Trees   lecture 20
21,22 15,16 Jun Case study: two-person games I,II   lecture 21
23 17 Jun Effects and Parallelism   lecture 23
24 20 Jun Imperative programming I   lecture 24
25 21 Jun Imperative programming II   lecture 24
26 22 Jun Monads   lecture 26
27 23 Jun Review   lecture 27   REVIEW GUIDE   PRACTICE PROBLEMS
FINAL EXAM 24 Jun FINAL EXAM


Disclaimer: All topics and dates are in flux, as is the date of the midterm.

last modified 12:57, 23 Jun 2016
Valid CSS! Valid XHTML 1.0 Strict