| Week Of |
Reading |
Monday |
Wednesday |
Friday |
| Jan 11 |
Chapters 1 & 2 |
Programming paradigms |
Syntax |
Grammars |
| Jan 18 |
Chapter 3 |
Martin Luther King Day |
Imperative programming |
Structured programming |
| Jan 25 |
|
Programming with invariants |
Proof rules for partial correctness |
Control flow in C |
| Feb 1 |
Chapter 4 |
Basic and aggregate types |
Unions, variants; sets |
Pointers |
| Feb 8 |
Chapter 5 |
Parameter passing |
Scope rules |
Lexical scope |
| Feb 15 |
Chapter 6 |
Activation records, displays |
Program structure; information hiding |
Modules |
| Feb 22 |
|
Review for Exam 1 |
Exam 1 |
Classes in C++ |
| Mar 1 |
Chapter 7 |
Objects |
Inheritance |
C++ |
| Mar 8 |
|
Derived classes |
Smalltalk |
Other examples |
| Mar 15 |
|
Spring Break |
Spring Break |
Spring Break |
| Mar 22 |
Chapter 8 |
Functional programming |
Types; functions |
Lexical scope; type checking |
| Mar 29 |
Chapter 9 |
Lists |
Function as first-class values |
ML |
| Apr 5 |
|
Little Quilt |
Review for Exam 2 |
Exam 2 |
| Apr 12 |
Chapter 10 |
Scheme |
List structure and manipulation |
Differentiation and simplication |
| Apr 19 |
Chapter 11 |
Logic programming |
Programming in Prolog |
Data structures and control in Prolog |
| Apr 26 |
Chapter 15 |
Pascal, C, C++, Smalltalk |
Standard ML, Scheme, Prolog |
Review for Final |