CSE 341 -- Spring 2002

We expect to spend roughly two weeks per language (Miranda, Java, Smalltalk, and Scheme), followed by additional material on comparative programming languages and other topics. If time allows, we will also have some discussion of perl and of CLP(R).

Tentative Schedule for the Quarter

This schedule is subject to change as the quarter progresses -- however, the dates of the midterm and final won't change.

Week 1: Miranda
Week 2: Miranda
Week 3: Java
Week 4: Java
Week 5: Smalltalk
Week 6: Smalltalk
Week 7: types in object-oriented languages; other concepts
Week 8: types in object-oriented languages; scheme
Week 9: Scheme; general concepts; CLP(R)
Week 10: perl

Final: Thursday, June 13, 8:30am - 10:20am

Details

Week 1 (April 1-5)
Course overview; language families. Miranda intro; defining and using functions; higher-order functions; infinite data structures. Reading: Miranda overview (handed out in class and also linked from the class web page). Use the Miranda text as a supplement as needed.

Week 2 (April 8-12)
Miranda continued. Polymorphic types; user-defined types; abstract types. Discussion of Miranda project.

Week 3 (April 15-19)
Java

Week 4 (April 22-26)
Java. Optional class April 26, due to College of Engineering open house.

Week 5 (April 29-May 3)
Smalltalk

Week 6 (May 6-10)
Smalltalk. Midterm May 10 (will cover Miranda and Java). Closed book and notes.

Week 7 (May 13-17)
Design patterns in OO languages; polymorphic types in OO languages.

Week 8 (May 20-24)
polymorphic types in OO languages May 20; Scheme May 22-24

Week 9 (May 27-31)
Holiday May 27. Scheme, general concepts May 29; CLP(R) May 31

Week 10 (June 3-7)
perl June 3-5; wrapup and evaluating programming languages June 7