A calendar of topics, week by week is here.
Some time in February: add an "if0" construct to the language of PLAI chapter 4, and use it to define a recursive factorial function (or, if your language doesn't support multiplication, a "plus-factorial" function, f(n) = 1+2+3+...+n.)
Some time in March: implement (in a familiar dialect of Scheme, with test cases) the language and interpreter for first-class functions (PLAI chapter 6), then add the mutation operators of PLAI chapter 13 (which requires changing the interpreter to take in not only an expression and an environment, but also a store).
Some time in April (Think of these as warm-ups for the final exam):
I also taught this course, in various guises, in Spring 1995, Spring 1996, Spring 1997, and Spring 1998.