Lecture 1: Introduction (Chapter 1 of TEXT)
Lectures 2 - 6: Lambda calculus (see handout and pp. 548-561 of TEXT)
Homework 1: Lambda calculus. Handed out in class. Some answers to this homework.
Homework 2: More Lambda calculus. [postscript] [html] Some answers.
Lectures 6-10: Scheme. See handout and Chapter 10 of Sethi.
White Knight's Song by Lewis Carroll. This was read in class during Lecture 6, and presents a neat exercise of the differences between name and value.
Homework 3: Scheme Some answers.
Project 1: Scheme.[postscript] [HTML] Note that this version is different
from the one which appeared on Tuesday!!!!!!!
The deadline is extended until
Thursday, October 24. Here are some instructions on how to use
Homework 4: Higher Order Programming Solutions.
Lectures 11-14: Prolog slides [postscript] Download this version instead to view four slides per page. [HTML] And some more Prolog slides. [postscript], [4/page]
Homework 5: Prolog. Answers.
Homework 6: Prolog. Answers.
Lectures 15-17: Static Typechecking and ML. Lectures 15-16: [postscript] [4/page] Lecture 17: [postscript] [4/page]
You may mind information about ML here. This also includes a link to instructions on how to download a copy of ML and an ML reference guide.
Homework 7: ML. Answers.
Midterm - November 4, Monday, during tutorial hour! Suggestions to study for midterm. Solutions to the midterm.
Project 2: Prolog. Electronic deadline - November 17, Sunday, 11:59 p.m.. Paper deadline - November 18, in Tutorial.
Homework 8: ML. Answers.
Lectures 18-22: C++ and OO programming. [Postscript] [4/page].
Homework 9: C++. Some answers.
Homework 10: More C++ and object-oriented design. Answers.
Project 3: C++ Out: November 19. Due: December 4, Wednesday, 11:59 p.m. Paper submission on December 5 in class.
Lectures 22-25. Topics in Programming Languages. Procedure invocation, parameter-passing, etc. [4/page]
Homework 11: Parameter-passing. Answers.
Homework 12: Procedure Activation Records. Answers.
Grades so far. If you missed a midterm and do not have "count as final" as the grade, your midterm mark is 0! If you had a medical or other emergency that excuses you from taking the midterm, make sure I know about it!
Review sheet for the final
Final exam: 9-11 a.m., December 16, Monday.