HW1 |
Sept 8 |
Sept 15 |
Function definition, conditionals, and structs in Scheme. |
HW2 |
Sept 15 |
Sept 22 |
Polymorphism, lists, trees, and recursion in Scheme |
Project 1 |
Sept 17 |
Oct 6 |
Interpreting a little bit of Scheme |
HW3 |
Sept 25 |
Oct 8 |
Local definitions, higher-order functions, mutation, I/O,
sequence, and iteration in Scheme |
Project 2 |
Oct 6 |
Nov 10 |
Interpreting a little bit of C++ |
HW4 |
Oct 8 |
Oct 15 |
Operators, declarations, I/O, control structures, functions and
parameters in C++ |
HW5 |
Oct 20 |
Nov 3 |
Defining classes, separate compilation, and dynamic memory
management in C++ |
HW6 |
Nov 3 |
Nov 12 |
Operator overloading, inheritance, polymorphism, templates,
exceptions in C++ |
HW7 |
Nov 17 |
Nov 24 |
Defining rules, using arithmetic and variables in Prolog |
Project 3 |
Cancelled |
Interpreting a little bit of Prolog |
HW8 |
Nov 19 |
Dec 3 |
Recursive rules in Prolog |
HW9 |
Dec 3 |
Dec 10 |
Using structures, lists, cut and difference lists in Prolog |