| Date | Reading | Daily | Topic | Due |
|---|---|---|---|---|
| 9/6 | 1.1-1.2 | Introduction, simple expressions | ||
| 9/7 | Project 0: Getting started | |||
| 9/8 | 1.2-1.3 | Ex 1.5 | Compound procedures, conditionals | |
| 9/11 | 2.1 | Ex 2.1 | Recursion | |
| 9/12 | Project 1: Quilting | |||
| 9/13 | 2.2 | Ex 2.4 | Induction | |
| 9/14 | Project 1: Quilting | |||
| 9/15 | 2.3-2.4 | Ex 2.9 | Further examples, custom-sized quilt | HW 1 |
| 9/18 | 3.1 | Ex 3.1 | Iteration | |
| 9/19 | Project 1: Quilting | |||
| 9/20 | 3.2 | Try Ex 3.5 | Using invariants | |
| 9/21 | Project 1: Quilting | |||
| 9/22 | 3.3 | Ex 3.13 | Perfect numbers, internal definitions, let | HW 2 |
| 9/25 | (none) | Iterative improvement, lab write-up discussion | ||
| 9/26 | Project 1: Quilting | |||
| 9/27 | (none) | Review/catch-up | Project 1 | |
| 9/28 | Project 1.5: Card sorting | Exam 1 7-9pm | ||
| 9/29 | 4.1 | Orders of Growth | ||
| 10/2 | 4.1 | More on orders of growth | ||
| 10/3 | Nobel conference (no class) | |||
| 10/4 | Nobel conference (no class) | |||
| 10/5 | Project 2: Sum of divisors | |||
| 10/6 | 4.2 | Tree recursion and digital signatures | HW 3 | |
| 10/9 | Ex 4.13 | More on tree recursion and digital signatures | Project 2 code | |
| 10/10 | Project 2: Sum of divisors (groups of 2) | |||
| 10/11 | 5.1 | Ex 5.1 | Procedural parameters | |
| 10/12 | Project 2: Sum of divisors (groups of 2) | |||
| 10/13 | (none) | Discussion of project 2 | ||
| 10/16 | 5.2 | Ex 5.4 | Uncomputability | |
| 10/17 | Project 2: Sum of divisors (groups of 2) | |||
| 10/18 | 5.3 | (none) | Procedures that return procedures | Project 2 |
| 10/19 | Project 3: Fractal curves | HW 4 | ||
| 10/20 | Reading break | |||
| 10/23 | Reading break | |||
| 10/24 | Project 3: Fractal curves | |||
| 10/25 | 5.4 | Ex 5.10 | Application of higher-order programming | |
| 10/26 | Project 3: Fractal curves | |||
| 10/27 | 6.1-6.2 | Data abstraction | Project 3 | |
| 10/30 | 6.3 | Ex 6.5 | Representations and implementations | |
| 10/31 | Project 4: Nim with strategies | |||
| 11/1 | 6.4 | Ex 6.11 | Three-pile nim | |
| 11/2 | Project 4: Nim with strategies | |||
| 11/3 | 7.1-7.2 | Lists, SETs | HW 5 | |
| 11/6 | Review/catch-up | |||
| 11/7 | Exam 2 in evening (no lab) | Exam 2 7-9pm Olin 103 | ||
| 11/8 | 7.3 | Basic list processing | ||
| 11/9 | Project 4: Nim with strategies | |||
| 11/10 | 7.4 | Ex 7.5(b) | Iterative list processing | |
| 11/13 | 7.5 | Ex 7.15 | Tree recursion and lists | |
| 11/14 | Project 4: Nim with strategies | |||
| 11/15 | 7.6 | Movie query system | Project 4 | |
| 11/16 | Project 5: Movie queries (groups of 2) | |||
| 11/17 | 8.1 | Ex 8.2 | Binary search trees | |
| 11/20 | 8.2 | Ex 8.3 | Efficiency issues with binary search trees | |
| 11/21 | Project 5: Movie query system | |||
| 11/22 | TBA | Catch-up | ||
| 11/23 | Thanksgiving | |||
| 11/24 | Thanksgiving | |||
| Date | Reading | Daily | Topic | Due |
| 11/27 | 8.3 | Ex 8.15 | Expression trees | |
| 11/28 | Project 5: Movie queries (groups of 2) | |||
| 11/29 | 9.1-9.2 | Ex 9.1 | Generic operations: multiple representations | HW 6 |
| 11/30 | Project 5: Movie queries (groups of 2) | |||
| 12/1 | 9.3 | 9.10, 9.12 | Exploiting commonality | |
| 12/4 | 9.4 | (questions) | Implementing computer graphics | Project 5 |
| 12/5 | Project 6: Implementing graphics | |||
| 12/6 | More on implementing computer graphics | |||
| 12/7 | Project 6: Implementing graphics | |||
| 12/8 | TBA | |||
| 12/11 | Overview of CS major and CS minor | |||
| 12/12 | Project 6: Implementing graphics | |||
| 12/13 | Review/Evaluations | Project 6 | ||
| 12/16 | Exam 3 (Hvidsten's 1:30 class) 1-3pm | Exam 3 1-3pm | ||
| 12/18 | Exam 3 (Wolfe's 11:30 class) 1-3pm | Exam 3 1-3pm | ||