On the CS machines, you will need to run Scheme and Java:
/local/apps/chez-6.0/bin/scheme
/local/apps/jdk/bin/javac
and
/local/apps/jdk/bin/java
: The Java byte-code compiler and
byte-code interpreter. (This is Version 1.1.7; there are are other versions
that you might want to use.)
Tentative Schedule
Date | Topic | Homework Due |
M 3/29 | Introduction; Java | |
W 3/31 | Semantics: Denotational, Operational, Axiomatic | |
F 4/2 | Semantics: Interpreters; Types; Program Verification | |
M 4/5 | Environments; Lexical Scope | HW1: Simple Java |
W 4/7 | Higher-Order Functions | |
F 4/9 | Closures; Recursion | |
M 4/12 | Lambda Calculus: Axioms | HW2: Scheme in Java |
W 4/14 | Lambda Calculus: Universal Language | |
F 4/16 | Lambda Calculus | |
M 4/19 | Continuations | HW3: Lambda Calculus |
W 4/21 | Continuation-Passing Style | |
F 4/23 | Continuation-Passing Style: Recursion to Iteration | |
M 4/26 | Exceptions | HW4: CPS |
W 4/28 | Exceptions | |
F 4/30 | No class | |
M 5/3 | Midterm | HW5: Exceptions |
W 5/5 | Store-Passing Style | |
F 5/7 | Java statements in Scheme | |
M 5/10 | Objects | HW6: Core Java in Scheme |
W 5/12 | Objects | |
F 5/14 | Inheritance | |
M 5/17 | Verifying Properties of Programs | HW7: Objects in Scheme |
W 5/19 | Types | |
F 5/21 | Types | |
M 5/24 | Types | |
W 5/26 | Types | |
F 5/28 | Types | |
M 5/31 | Memorial Day | HW8: Types |
W 6/2 | Conclusion; Perspective; Future | |
F 6/4 | Final Review; Teaching Evaluation | |
M 6/7 | Final Exam from 3:15 to 5:15 |
sabry@cs.uoregon.edu