Handouts
| Week | Date | Topic | Handout |
|---|---|---|---|
| 1 | Thursday, 9/6 | Course Intro / Intro to C |
Syllabus Honor Code Assignment 1 |
| 2 | Thursday, 9/13 | C memory and pointers | Assignment 2 |
| 3 | Friday, 9/21 | C data structures | Assignment 3 |
| 4 | Thursday, 9/27 | Lambda calculus | Assignment 4 |
| 5 | Thursday, 10/4 | Midterm | Midterm Study Guide |
| 6 | Thursday, 10/11 | Lisp | Lisp Cheat Sheet |
| 6 | Thursday, 10/11 | Lisp | Assignment 5 (optional, no credit, for fun) |
| 7 | Thursday, 10/18 | F# | Assignment 6 |
| 8 | Thursday, 10/26 | F# | Assignment 7 |
| 9 | Tuesday, 10/30 | Parser combinators |
BraceLang.fs Parsers.fs |
| 9 | Thursday, 11/2 | Project proposal |
Assignment 8 Simple evaluator for arithmetic |
| 10 | Tuesday, 11/6 | Project prototype |
Assignment 9 Blub.fs (evaluator with dynamically-scoped variables) Sample project that makes sounds and draws graphics (there are many other ways to solve these problems as well!) |
| 10 | Thursday, 11/8 | Sound generation example using FSound | Instructions |
| 11 | Sunday, 11/25 | Mostly working project guidelines | Assignment 10 |
| 11 | Thursday, 11/29 | Object oriented programming examples |
Dynamic dispatch in Java Static dispatch in C++ Virtual dispatch in C++ |
| 12 | Thursday, 12/6 | Final project checklist |
Final project checklist |