Lectures
Lectures: Tue and Thur 10:10–11:00am, Bailey Hall 101, starting Thursday, August 29, 2019.
Discussion sections: Various rooms and times, starting Tuesday, September 3, 2019.
Level Up: Schedule
Materials are made available in a public repo. Any broken links to materials in the schedule below mean that those materials have not yet been released.
Videos: Recorded videos of lectures are accessible in Panopto/Canvas by students who are registered in the course. We regret that they are not available more widely because of FERPA restrictions.
Functional Programming | ||
Thu, 08/29/19 | Lecture 1: Introduction to 3110 |
One-page course summary, syllabus |
Mon, 09/02/19 | Labor Day: no class | |
Tue, 09/03/19 | Lecture 2: Expressions |
Discussion sections begin today |
Thu, 09/05/19 | Lecture 3: Functions |
|
Tue, 09/10/19 | Lecture 4: Pattern Matching |
|
Thu, 09/12/19 | Lecture 5: Variants |
|
Tue, 09/17/19 | Lecture 6: Higher-order Programming |
|
Modular Programming | ||
Thu, 09/19/19 | Lecture 7: Modules |
|
Tue, 09/24/19 | Lecture 8: Functors |
|
Thu, 09/26/19 | Lecture 9: Abstraction and Specification |
|
Tue, 10/01/19 | Lecture 10: Testing |
|
Efficiency | ||
Thu, 10/03/19 | Lecture 11: Efficiency |
|
Tue, 10/08/19 | Lecture 12: Mutable Data Types |
|
Thu, 10/10/19 | Lecture 13: Hash Tables |
|
Mon, 10/14/19 | Fall Break: no class | |
Tue, 10/15/19 | Fall Break: no class | |
Thu, 10/17/19 | Prelim | Details about exams. When: 7:30—9:00 pm. Where: TBA. |
Tue, 10/22/19 | Lecture 14: Amortized Analysis |
|
Thu, 10/24/19 | Lecture 15: Balanced Trees |
|
Interpreters | ||
Tue, 10/29/19 | Lecture 16: Interpreters |
red-black clicker question discussion (corrected) |
Thu, 10/31/19 | Lecture 17: The Substitution Model |
|
Tue, 11/05/19 | Lecture 18: The Environment Model |
|
Thu, 11/07/19 | Lecture 19: Type Checking |
|
Formal Methods | ||
Tue, 11/12/19 | Lecture 20: Proofs about programs |
|
Thu, 11/14/19 | Lecture 21: Proofs about programs, part 2 |
|
Tue, 11/19/19 | Lecture 22: Proofs about programs, part 3 |
|
Thu, 11/21/19 | Lecture 23: Proofs are Programs |
|
Advanced Topics | ||
Tue, 11/26/19 | Lecture 24: Streams and Laziness |
|
Wed, 11/27/19 | Thanksgiving Break: no class | |
Thu, 11/28/19 | Thanksgiving Break: no class | |
Tue, 12/03/19 | Lecture 25: Promises |
LWT Manual |
Thu, 12/05/19 | Lecture 26: Monads |
|
THE END | ||
Tue, 12/10/19 | Lecture 27: Victory Lap |
|
Sat, 12/14/19 | Final Exam | Details about exams. When: 9:00—11:30 am. Where: TBA. |