| Assignment | Date Assigned | Date Due | Relative Weight |
|---|---|---|---|
| Assignment 1: Class-based Inheritance and Virtual Dispatch in Java | Tuesday, February 2 | Friday, February 19 at 11:59 PM | 1 |
| Assignment 2: Prototype-based Inheritance and Higher-Order Functions in JavaScript | Tuesday, March 2 | Tuesday, March 30 at 11:59 PM | 1 |
| Assignment 3: Higher-Order Functions, Algebraic Data Types, and Pattern Matching in Swift | Thursday, April 8 | Tuesday, May 4 at 11:59 PM | 1 |
| Assignment 4: Introduction to Prolog Basics | Tuesday, April 27 | Friday, May 21 at 11:59 PM (hard deadline!) | 0.5 |
| Assignment 5: Recursion and Structures in Prolog | Tuesday, April 27 | Friday, May 21 at 11:59 PM (hard deadline!) | 1 |