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 | ||
Lecture 1: Introduction to 3110 |
§1
One-page course summary, syllabus |
|
Labor Day: no class | ||
Lecture 2: Expressions |
§2.0,
§2.1,
§2.2
Discussion sections begin today |
|
Lecture 3: Functions |
§2.3,
§2.4
|
|
Lecture 4: Pattern Matching |
§3.0,
§3.1
|
|
Lecture 5: Variants |
§3.2
|
|
Lecture 6: Higher-order Programming |
§4
|
|
Modular Programming | ||
Lecture 7: Modules |
§5.0,
§5.1,
§5.2
|
|
Lecture 8: Functors |
§5.3
|
|
Lecture 9: Abstraction and Specification |
§6
|
|
Lecture 10: Testing |
§7
|
|
Efficiency | ||
Lecture 11: Efficiency |
§9.0,
§9.1
|
|
Lecture 12: Mutable Data Types |
§8
|
|
Lecture 13: Hash Tables |
§9.2
|
|
Fall Break: no class | ||
Fall Break: no class | ||
Prelim | Details about exams. When: 7:30—9:00 pm. Where: TBA. | |
Lecture 14: Amortized Analysis |
§9.3
|
|
Lecture 15: Balanced Trees |
§9.4,
§9.5
|
|
Interpreters | ||
Lecture 16: Interpreters |
§10.0,
§10.1
red-black clicker question discussion (corrected) |
|
Lecture 17: The Substitution Model |
§10.2
|
|
Lecture 18: The Environment Model |
§10.3
|
|
Lecture 19: Type Checking |
§10.4
|
|
Formal Methods | ||
Lecture 20: Proofs about programs |
§11
|
|
Lecture 21: Proofs about programs, part 2 |
§11
|
|
Lecture 22: Proofs about programs, part 3 |
§11
|
|
Lecture 23: Proofs are Programs |
§11
|
|
Advanced Topics | ||
Lecture 24: Streams and Laziness |
§12.1
|
|
Thanksgiving Break: no class | ||
Thanksgiving Break: no class | ||
Lecture 25: Promises |
§12.2
LWT Manual |
|
Lecture 26: Monads |
§12.3
|
|
THE END | ||
Lecture 27: Victory Lap | ||
Final Exam | Details about exams. When: 9:00—11:30 am. Where: TBA. |