This page will contain info about the assignments, as they are released. See the schedule for information about when future assignments will be released.
You can download the assignments from Canvas. Submit your assignments via Gradescope.
LaTeX: If you are interested in typesetting your assignments using LaTeX, there are many tutorials and introductions. We will provide some LaTeX files for you to use to write your homeworks.
Assignment | Assigned | Due | |
---|---|---|---|
1 | Operational semantics; induction | 2 Feb | 25 Feb |
2 | Denotational semantics; Fixed points; Lambda calculus implementation | 25 Feb | 18 Mar |
3 | Call-by-need; Encodings; Continuation-passing style translation | 11 Mar | 25 Mar |
4 | Recursive types; Existential and universal types; Type Inference | 25 Mar | 8 Apr |
5 | Monad Laws; Lambda-Print; Ethical Specifications (Optional: Monadic Interpreter) | 8 Apr | 22 Apr |
6 | Axiomatic Semantics; Logic Programming | 22 Apr | 29 Apr |