| Assignment | Date Assigned | Date Due | Relative Weight |
|---|---|---|---|
| Assignment 1: Class-based Inheritance and Virtual Dispatch in Java | Wednesday, July 14 | Tuesday, July 27 at 11:59 PM | 1 |
| Assignment 2: Prototype-based Inheritance and Higher-Order Functions in JavaScript | Monday, July 26 | Tuesday, August 10 at 11:59 PM | 1 |
| Assignment 3: Higher-Order Functions, Algebraic Data Types, and Pattern Matching in Swift | Monday, August 16 | Wednesday, August 25 at 11:59 PM | 1 |
| Assignment 4: Introduction to Prolog Basics | Monday, August 16 | Friday, August 27 at 11:59 PM (hard deadline!) | 0.5 |
| Assignment 5: Recursion and Structures in Prolog | Monday, August 16 | Friday, August 27 at 11:59 PM (hard deadline!) | 1 |