Week # (+section meeting milestone)
|
Monday |
Wednesday |
Friday |
1 |
Oct
1: Welcome and introduction. Programming language paradigms. UWOnCue
|
Oct
3:LISP history, interaction with Lisp
|
Oct
5:Lisp: more basic interaction, functions, symbols, evaluation
|
2
(Assignment 1 due)
|
Oct
8:List structure, recursive functions on lists
|
Oct
10:Scope and Extent, LET, LET*, packages and interning
|
Oct
12:Macros and embedded languages
|
3
(Assignment 2 due)
|
Oct
15:Explicit application and evaluation
|
Oct
17:Closures and functional programming
|
Oct
19:Full-strength applications in Lisp
|
4
(Assignment 3 due)
|
Oct
22:Lazy evaluation, continuations, streams
|
Oct
24:Syntax, BNF, EBNF, types, type inference, polymorphism
|
Oct
26:Introduction to ML
|
5
(Quiz 1) |
Oct
29:More on ML -- pattern matching, functional programming
|
Oct
31:ML's type system
|
Nov
2:UWOnCue -- "WORKING IN GROUPS" + description of the project (a group-work assignment)
|
6
(Assignment 4 due)
|
Nov
5:JAVA: introduction
|
Nov
7:Classes, interfaces and inheritance in Java
|
Nov
9:Java AWT, 1.1 event model, adapters
|
7
(Project plans due) |
Nov
12:
Veterans' Day (NO CLASS) |
Nov
14:Java threads + brief review
|
Nov
16:PROLOG: example programs
|
8
(Assignment 5 due on Nov 21.)
|
Nov
19:Horn clauses and unification
|
Nov
21:List manipulation in Prolog
|
Nov
23:
Thanksgiving Day holiday (NO CLASS). |
9
(Assignment 6 due; Quiz 2)
|
Nov
26:PERL: introduction, examples of text processing, scalars
|
Nov
28:Arrays, slices, list/scalar contexts, references
|
Nov
30:Topic TBA
|
10
(Group projects due)
|
Dec
3:Regular expressions
|
Dec
5:Visual Languages
|
Dec
7:Review for final examination
|
11
(Assignment 7 due Dec. 12 in class)
|
Dec
10: Project peer evaluations
|
Dec
12: Ethical issues in computing and their relation to programming languages
Last day of class |
Dec
14:
FINAL EXAMINATION 2:30-4:20
|