Schedule
Date |
| Topic |
Aug 28 |
| Introduction; course overview |
Aug 30 |
| Arithmetic |
Sep 1 |
| Functions and Programs |
Sep 4 |
| Labor Day, no class |
Sep 6 |
| The Recipe |
Sep 8 |
| Designing Worlds |
Sep 11 |
| Intervals, Enumerations, Itemizations |
Sep 13 |
| Structures |
Sep 15 |
| Itemizations and Structures |
Sep 18 |
| Lists |
Sep 20 |
| Self-referential Data Definitions |
Sep 22 |
| More Lists |
Sep 25 |
| Design by Composition |
Sep 27 |
| The Snake Game, Part I |
Sep 29 |
| The Snake Game, Part II |
Oct 2 |
| Midterm 1 |
Oct 4 |
| TBD |
Oct 6 |
| TBD |
Oct 9 |
| Highlights |
Oct 11 |
| Designing Abstractions, Part I |
Oct 13 |
| Designing Abstractions, Part II |
Oct 16 |
| Using Abstractions |
Oct 18 |
| Though Shall Not Be Named |
Oct 20 |
| Trees |
Oct 23 |
| Forests, S-Expressions |
Oct 25 |
| Designing with Intertwined Data |
Oct 27 |
| Incremental Refinement |
Oct 30 |
| Simultaneous Processing |
Nov 1 |
| Non-standard Recursion |
Nov 3 |
| Designing Algorithms |
Nov 6 |
| Midterm 2 |
Nov 8 |
| Variations |
Nov 10 |
| Mathematical Examples |
Nov 13 |
| Backtracking |
Nov 15 |
| Losing Knowledge |
Nov 17 |
| Designing Accumulator-style Functions |
Nov 20 |
| Accumulating More |
Nov 22 |
| Thanksgiving break, no class |
Nov 24 |
| Thanksgiving break, no class |
Nov 27 |
| TBD |
Nov 29 |
| TBD |
Dec 1 |
| Types, Part I |
Dec 4 |
| Types, Part II |
Dec 6 |
| Objects, Part I |
Dec 8 |
| Objects, Part II |
Dec 11 |
| Conclusions and Perspective |