Date |
Topic |
Reading |
Due |
8-27 |
Introduction |
|
|
8-30 |
Scheme Basics |
S&F Ch. 1 |
|
9-1 |
Procedures and Recursion 1 |
S&F Ch. 2 |
|
9-3 |
Procedures and Recursion 2 |
|
|
9-6 |
Labor Day |
|
|
9-8 |
Data Abstraction and Numbers |
S&F Ch. 3 |
Quiz #1 (Answers) |
9-10 |
Data Driven Recursion 1 |
S&F Ch. 4 |
Assignment #1 |
9-13 |
Data Driven Recursion 1.5 |
|
|
9-15 |
Data Driven Recursion 2 |
|
|
9-17 |
Locally Defined Procedures
1 |
S&F Ch. 5 |
Assignment #2 |
9-20 |
Locally Defined Procedures
2 |
|
Quiz #2 (Answers) |
9-22 |
Interactive Programming
1 |
S&F Ch. 6 |
|
9-24 |
Interactive Programming
2 |
|
|
9-27 |
Abstracting Procedures
1 |
S&F Ch. 7 |
Assignment #3 |
9-29 |
Abstracting Procedures 2
|
|
Quiz #3 (Answers) |
10-1 |
Set and Relations 1 |
S&F Ch. 8 |
|
10-4 |
Set and Relations 2 |
|
|
10-6 |
Using Streams |
S&F Ch. 15 |
|
10-8 |
Test (Answers) |
|
|
10-11 |
Intro to ML |
Ullman Ch. 1-2 |
|
10-13 |
No class |
|
|
10-15 |
Semester Break |
|
|
10-18 |
List, Tuples, and Functions
in ML |
Ullman Ch. 3.1-3.3 |
Assignment #4 |
10-20 |
Recursion, Patterns, and Let
in ML |
Ullman Ch. 3.4-3.6 |
|
10-22 |
Side Effects: I/O in ML |
Ullman Ch. 4 |
Assignment #5 |
10-25 |
Matches, Exceptions and Polymorphic
Functions |
Ullman Ch. 5.1-5.3 |
|
10-27 |
Higher-Order Functions |
Ullman Ch. 5.4-5.7 |
|
10-29 |
Defining New Types in ML |
Ullman Ch. 6 |
Assignment #6 |
11-1 |
Binary Trees as a Data Type
in ML |
|
Quiz #4 (Answers) |
11-3 |
Records, Array, and References |
Ullman Ch. 7 |
|
11-5 |
(No class - ACM Programming Competition) |
|
|
11-8 |
No class - DPS |
|
|
11-10 |
No class - DPS |
|
|
11-12 |
The ML Module System |
Ullman Ch. 8 |
Assignment #7 |
11-15 |
Functors |
|
|
11-17 |
Encapsulation and Data Hiding
in ML |
|
|
11-19 |
Concluding ML |
|
Quiz #5 (Answers) |
11-22 |
Continuations 1 |
S&F Ch. 16 |
Assignment #8 |
11-24 |
Continuations 2 |
|
|
11-26 |
Thanksgiving Holday |
|
|
11-29 |
Using Continuations |
S&F Ch. 17 |
|
12-1 |
Quick view of O'Caml |
|
Assignment #9 |
12-3 |
Quick view of Haskell |
|
Quiz #6 (Answers) |
12-6 |
Course Conclusions |
|
Assignment #10 |