CSE 341: Autumn 2000

Day by Day Schedule of Topics and Quizzes (subject to change)

Unless otherwise noted: assignments should be turned in as hardcopy at the beginning of class on the days indicated.
 
 
Week # Monday Wednesday  Friday
1 Sept 25: Course introduction Sept 27: Lisp: interaction, evaluation of expressions, lists, quoting and extra evaluation. Sept 29: Lisp: S-expressions and functions, recursion,  looping, functional  programming, referential transparency.
2 Oct 2: Lisp: symbols, lexical and dynamic scoping, extent, local & global variables, LET,  LET*.  Oct 4: Lisp: input and output, CGI programming in Lisp for the Web. Lisp  warmup assignment due. Oct 6: Lisp: explicit application of functions,  closures, MAPCAR, EVAL.
3 Oct 9: Lisp: association lists, hashtables, data structures in Lisp. Oct 11:  Lisp: macros, pattern matching using Lisp. Oct 13: Lisp quiz
4 Oct 16:  Java Introduction. Lisp program due. Oct 18: Java Objects, classes, inheritance, methods, Java basics. Oct 20: Java Classes, modifiers public,
private, etc., access to members
5 Oct 23: Java collections classes and other utilities. Oct 25: Java's Abstract Windowing Toolkit.
Java warmup assignment due.
Oct 27: Java threads.
6 Oct 30: Java drawing programs.  the PolyDraw applet .. Nov 1:  Java networking support .Java J2 milestone reports due Nov 3: Java conclusion, miniproject discussion
7 Nov 6:  Java Quiz Nov 8: Perl:  Introduction to Perl. Nov 10: (Veterans Day holiday observed)
NO CLASS
8 Nov 13:  Perl Regular expressions. Java J2 program due Nov 15: Visual programming: control flow, data flow, rules, direct manipulation and abstract demonstration. Nov 17: Perl: Lists, hashes, references, CGI processing.
9 Nov 20: Formal descriptions of syntax: BNF, EBNF; Types, type inference, polymorphism.  Nov 22: Programming as specifying computation.; Introduction to Logic programming. Short Perl program due. Nov 24: (Thanksgiving Day holiday observed) NO CLASS
10 Nov 27:  Logic programming examples.  Nov 29: Miscellaneous topics in programming languages. Mini-project milestone reports due. Dec 1: Programming Languages and People: Design issues, ethical issues.
11 Dec 4: mini-project demonstrations. Meet in Sieg 232 to give your demonstration and do your peer reviews.  Dec 6: Last day of class
Review of language concepts. 
 FINAL EXAM
 2:30-4:20 p.m.

Revised: 27-Nov-2000    tanimoto@cs.washington.edu