Date  Lecture Topic  Readings  Extra Exercises  Due  Notes 
1/9  Introduction to Scheme 
HTDP Chapter 2 HTDP Chapter 3

HTDP Section 2.2 Exercises HTDP Section 2.3 Exercises HTDP Section 3.3 Exercises



1/10  Symbols and Conditionals 
HTDP Chapter 4 HTDP Chapter 5

HTDP Section 4.3 Exercises HTDP Section 4.4 Exercises HTDP Section 5.1 Exercises

Homework 0


1/13  Structures 
HTDP Chapter 6 HTDP Chapter 7

HTDP Section 6.3 Exercises HTDP Section 6.4 Exercises HTDP Section 6.7 Exercises HTDP Section 7.2 Exercises


Notes on structs

1/14  Nested Structures, Intro to Lists 
HTDP Chapter 9.1 HTDP Chapter 9.2

HTDP Section 9.1 Exercises HTDP Section 9.2 Exercises


Programming Inside Out

1/16  Lists and The Design Recipe 
HTDP Chapter 9 HTDP Chapter 10

HTDP Section 9.5 Exercises HTDP Section 10.1 Exercises

Homework 1

Notes on design process [ppt] Notes on design process [pdf] Design Recipe Worksheet [pdf]

1/17  Lists of structures and sorting 
HTDP Chapter 10.2

HTDP Section 10.2 Exercises


insertion sort

1/20  Intro to higherorder functions and filter 
HTDP Chapter 20 HTDP Chapter 22



Notes on loops [ppt] Notes on loops [pdf]

1/21  Filter and Map 
HTDP Chapter 19.1 HTDP Chapter 21.1 HTDP Chapter 21.2

HTDP Section 21.2.23 Exercises [NEW] Notes and Exercises


Notes on lambdas as args Advanced Loops (OPTIONAL) [ppt] Advanced Loops (OPTIONAL) [pdf]

1/23  Functions as Values 




1/24  Trees 
HTDP Chapter 14

HTDP Section 14.2 Exercises

Homework 2

Notes on trees [ppt] Notes on trees [pdf]

1/27  Mutual Recursion (more trees) 
HTDP Chapter 15

HTDP Section 15.1 Exercises HTDP Section 15.3 Exercises


