You can jump to the upcoming week or to the (tentative) future weeks. Anything on the schedule more than 24 hours in advance is subject to change.

Past weeks

Week Tuesday Thursday Assignments Reading
1 Jan 10
Lecture 0
Introduction
Jan 12
Lecture 1
Overview
Assignment 0 Released Chapter 1.1 - 1.3
2 Jan 17
faculty strike, no class
Jan 19
faculty strike, no class
   
3 Jan 24
Lecture 2
What is an object?
Jan 26
Lecture 3
What is an object?  (annotated)
Assignment 0 Due Assignment 1 Released Chapter 7.1
Chapter 6.1.2
Chapter 8.1 - 8.3
4 Jan 31
Lecture 4
Modules, Subtyping, Overloading, Overriding  (annotated)
Feb 02
Lecture 5
Multiple Inheritance, Traits
  Chapter 10
5 Feb 07
Lecture 6
Multiple Inheritance, Traits
Feb 09
Lecture 7
Casting, Typing
Assignment 1 Due Chapter 10
6 Feb 14
Lecture 8
Casting, Typing  (annotated)
Feb 16
Lecture 9
Reflection  (annotated)
Assignment 2 Released Assignment 1 outline
Chapter 16.3
7 Feb 21
Lecture 10
Reflection  (annotated)
Feb 23
Lecture 11
Error Handling  (annotated)
Assignment 1 Resubmission Due 2/20 at 11:59 PM Chapter 16.3
Chapter 9.4
8 Feb 28
Lecture 12
Generics
Mar 02
Lecture 13
Review for the Midterm
Assignment 2 Due 2/27 at 11:59 PM Chapter 7.3
Assignment 2 outline
9 Mar 07
Midterm
Mar 09
Lecture 14
Generics
Assignment 2 Resubmission Due 3/8 at 11:59 PM Chapter 7.3
10 Mar 14
Lecture 15
Java Streams  (annotated)
Mar 16
Lecture 16
Java Streams  (annotated)
Assignment 3 Released Chapter 11
Java Stream API
11 Mar 21
spring break, no class
Mar 23
spring break, no class
   
12 Mar 28
Lecture 17
Interpreter 1
Mar 30
Lecture 18
Interpreter 2
Assignment 3 Due 3/31 at 11:59 PM interpreter code
Definitional Interpreters for Higher-Order Programming Languages, John C. Reynolds
13 Apr 04
Lecture 19
Interpreter 3  (annotated)
Apr 06
Lecture 20
Imperative Interpreter  (annotated)
Assignment 4 Released imperative interpreter code
Definitional Interpreters for Higher-Order Programming Languages, John C. Reynolds
14 Apr 11
Lecture 21
Object Representation  (annotated)
Apr 13
Lecture 22
Bytecode  (annotated)
Assignment 3 Resubmission Due 4/14 at 11:59 PM Chapter 16.1
JVM Bytecode
15 Apr 18
Lecture 23
Bytecode  (annotated)
Apr 20
Lecture 24
Just-In-Time (JIT) compiling
Assignment 4 Due 4/21 at 11:59 PM Chapter 16
Chapter 17
16 Apr 25
Lecture 25
Garbage Collection
Apr 27
Lecture 26
Review for the Final
Assignment 4 Resubmission Due 4/28 at 11:59 PM Assignment 4 outline
Chapter 8.5.3


Upcoming week

Week Tuesday Thursday Assignments Reading

top

top

May 07