Fall semester 2002

Tentative schedule

Date Topic Readings Homework (out) Homework (due)
9/5 Overview of the course and Intro to ML (1) chapter 1, steele_oopsla98*
9/10 Intro to ML (2)
9/12 Intro to ML (3) Hw1
9/17 Lecture cancelled
9/19 Syntax and Parsing (1) chapter 2: 2.1
9/24 Syntax and Parsing (2) chaper 2: 2.2.1-3, 2.2.5-6
9/26 Syntax and Parsing (3) chapter 2: 2.3, 2.4
10/1 Names and scoping (1) chapter 3: 3.1, 3.3.1-2 Hw2 Hw1
10/3 Names and scoping (2)
10/8 Control flow (1) chapter 6:6.1, 6.2
10/10 Control flow (2) chapter 6: 6.3-8
10/15 Subroutines and Control abstraction (1) chapter 3: 3.2.1; chapter 8: 8.1-2 Hw3 Hw2
10/17 Subroutines and Control abstraction (2) chapter 3: 3.4
10/22 Subroutines and Control abstraction (3) chapter 8.3 Hw3
Garbage collection chapter 3: 3.2.2-3; chapter 7: 7.7.3
10/29 Midterm
10/31 Data types chapter 7: 7.1, 7.2.1-4
11/5 Election Day (No lecture)
11/7 Data abstraction and Object-Oriented Programming Languages (1) chapter 10: 10.1-2
11/12 Object-Oriented Programming Languages (2) chapter 10: 10.3 Hw4
11/14 Object-Oriented Programming Languages (3) chapter 10: 10.4, Type systems a b
11/19 Functional Programming (1) chapter 11: 11.1-2 why functional programming? *
11/21 Functional Programming (2) Hw5 Hw4
11/26 Functional Programming (3) lambda calculus
11/28 Thanksgiving holiday ( No lecture)
12/3 Logic Programming (1) chapter 11: 11.3 HW5
12/5 Logic Programming (2)
12/10 Special Review Session
12/17 Final exam
* fun readings, not required.