CSE 341 Tentative Day by Day Schedule (Spring 2003)

Unless stated otherwise, assignments will be due at the beginning of your quiz section. (This schedule is subject to change.)    Revised: 2-June-2003    tanimoto@cs.washington.edu
Week # (+section meeting milestone) Monday Wednesday  Friday
1 (Assignment 1 due) March 31: Welcome and introduction. April 2:LISP history, interaction with Lisp April 4:Lisp: more basic interaction, functions, symbols, evaluation
2 (Assignment 2 due) April 7:Programming skills April 9:List structure, recursive functions on lists April 11:Scope and Extent, LET, LET*, packages and interning
3 (Assignment 3 due). Optional Java sessions (see below). April 14:Macros and embedded languages April 16:Explicit application and evaluation April 18:Closures and functional programming
4 April 21:Midterm 1 April 23:Full-strength applications in Lisp April 25:Lazy evaluation, Syntax, BNF, EBNF
5 (Assignment 4 due) April 28:Types, type inference, polymorphism April 30:Introduction to ML May 2:More on ML -- pattern matching, functional programming
6 (Assignment 5 due; project plans due) May 5:ML's type system May 7:Project ideas May 9:Logic programming examples
7 May 12:Logic programming theory: 1. Predicate logic, and clause form. May 14:Midterm 2 May 16:Logic programming theory: 2. Unification
8 May 19:Prolog examples (Meet in MGH 030) May 21:PERL: introduction, examples of text processing, scalars May 23:Arrays, slices, list/scalar contexts, references
9 May 26: Memorial Day holiday (NO CLASS). May 28:Regular expressions, CGI Scripting (Meet in Collaboratory 2 in the Odegaard Undergraduate Library). May 30: Visual Languages
10 (Project presentations) June 2:Ethical issues in computing and their relation to programming languages June 4:Project "pre-demonstrations" Meet in Collaboratory 2 in the Odegaard Undergraduate Library. Peer and instructor evaluations of demos will take place during sections on Thursday, in the following rooms: Section AA at 8:30 MGH 030; Section AB at 9:30 in OUGL Collaboratory 2. If your team has members in both sections, the team should go to the 8:30 section first and try to demo at the end of that period, but be prepared to demo in the second period if we run out of time during the first section. June 6:Review for final examination
Last day of class
11  June 12 (THURSDAY): FINAL EXAMINATION 8:30-10:20   

Optional Java Sessions

An optional introduction to Java will be offered in a 2-session series: Monday, April 14, 3:30-5:00 in MGH 30 (changed from 4:30) and Wednesday, April 16, 3:30-5:00 in CMU B027. Java is not required for the course, but some students may wish to use Java as an implementation language for the project if the project requires graphics.