CSC324 Notes Online

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 submit and tar .

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.

Final marks.