.
| Class | Topic | Reading |
| 1 | Intro, Imperative languages, Control Structures
| |
| 2 | Types, Procedures, Parameter Passing
| |
| 3 | Block Structure, Scoping, Modularization, Ada Packages
| |
| 4 | Ada Exceptions, Ada Generics
| |
| 5 | Concurrency, Ada Tasks, new Ada95 features
| |
| 6 | Applicative/Declarative Languages, LISP, Scheme | |
| 7 | Scheme Programming | Scheme Report |
| 8 | Scheme Programming | |
| 9 | Interpretation, Garbage Collection | |
| 10 | Lambda Calculus | handout |
| 11 | Denotational and Operational Semantics
| handout |
| 12 | Functional Programming, ML
| |
| 13 | ML programming | |
| 14 | Polymorphic type inference, unification
| handout |
| 15 | type inference, unification (cont).
| handout |
| 16 | Logic Programming, Prolog
| |
| 17 | Prolog Programming, Unification revisited.
| |
| 18 | Prolog Programming, Arithmetic, Cut
| |
| 19 | Prolog Programming
| |
| 20 | SETL | SETL manual |
| 21 | SETL | |
| 22 | Object Oriented Languages
|   |
| 23 | Object Oriented Languages
|   |
| 24 | Object Oriented Languages
|   |
| 25 | Formal models of Object Oriented Languages |
Handout |
| 26 | Formal models of Object Oriented Languages (cont) | |
|   | Final Exam: Wednesday, 12/21 at 2pm in 101WWH | |