University of Toronto at Mississauga - Erindale College - Spring 2001
Department of Computer Science

CSC 324: Principles of Programming Languages

General Information

Instructor: Eric Joanis
Info Sheet: Please consult the course info sheet for most general information about the course.
Synopsis: The course synopsis can be found here.
Notes Online: Lecture slides will be made available here throughout the term.
Newsgroup: We will use the downtown newsgroup ut.cdf.csc324h for assignments we share with them.
You can post to the newsgroup by sending e-mail to
Homework Assignments: Homework assignments will be posted here.
Programming Projects: Programming projects will be posted here.
Online References: Scheme references and Prolog references.
Your Marks: You can check your marks online here.


Watch this space for announcements throughout the term.

April 28: You can now find the test suite used in the P2 automarking on the project page.

April 26: A new mark has been added to the grade file called p2automarkingonly. This is the correctness portion of your project grade, based only on the results of the automarking, out of 55. The whole project will be out of 100, so you can consider this portion as being worth 5.5% of your course grade.

April 17: I will hold another office hour on Friday, April 27, from noon to 3pm.

April 13: I will hold an office hour during study week on Tuesday, April 17, from 11am to 1pm.

April 7: Study aid: last summer's final.

April 6: Unclaimed work until HW3 can be collected at Rajni's office.

April 4: For question 7 of HW5, you should do part (b) only.

April 2: Friday, I will spend one hour finishing the material on procedural languages, and one hour reviewing what we did this term. Bring questions about things you didn't understand!

April 1: Project Permissions: Please do not forget to set the permissions to -rw-r--r-- when you submit your project file, otherwise we will not be able to read it!!!

March 22: Prolog project grace day policy: since the Prolog project is due on a Friday, and I can't collect things on the week-end, I will use the following grace day policy: if your project is in by Friday, March 30, 5pm, it uses one grace day. If your project is in by Monday, April 2nd, 1pm, it uses two grace days.

March 20: HW4 is due at 1pm, not 11am as incorrectly indicated on the handout.

March 20: I realize some people have been having a hard time using the Unix script utility, so a few pointers: start it with "script scriptfile"; run Scheme/Prolog, do your testing, quit Scheme/Prolog; exit the script shell; run "cleanscript scriptfile" and print the cleaned file for handing in.

March 17: The following marking comments were written by the Scarborough TA. David tells me that pretty much all the comments apply to his marking a well, except that the marking details (penalties for particular mistakes) are different. Project 1, Homework 2.

March 16: A typo on HW4: for selectionsort, the algorithm should say "take the largest element of the list, and move it to the front," not the smallest, since we want the list sorted in non-increasing order.

March 15: Here is the Scheme project marking script, which you can use to see where you lost your correctness marks. Save the file in the directory where your cl.scm file is located, and run "scheme < p1autotest" at the command prompt.

March 9: Here are the midterm solutions.

March 9: You can now check your marks online. Midterm and project marks have been posted.

March 9: I've added an XSB basics document and a link to the High-Level Tracing page of the XSB manual in the Prolog references section. Have a look at them, they'll help you figure out how to use XSB Prolog.

March 4: As voted in class Friday, the HW3 deadline has been postponed to Friday, March 9, to distance it from the midterm. Same as last time, however, there will be no grace days.

February 26: The midterm will be held in North building room 134 at 2:10 and will last 90 minutes. No aids allowed.

February 24: Several typos on the HW3 handout were noted on the newsgroup (remember to read it regularly!), so they were fixed and a corrected version is now available on the homeworks page.

February 14: I've been asked to provide an old midterm, which I have no problem doing, except that the material was covered in a slightly different order this term, so half of questions are about material we haven't seen. However, in case it might still be useful, you can have a look at last summer's midterm.

February 11: P1 Extension: The due date for the Scheme project has been moved to Friday, February 16, 1pm. However, because of the following week-end and reading week, no graces days will be allowed, so I will not accept any projects after 1pm on Friday.

February 6: I've added a courses.scm file to the projects page containing the database as it appears on the handout.

February 5: In this week's and next week's lectures, I will be using many of the downtown slides, so you should print them and bring them to class.

February 5: Reminder: you are responsible for reading the newsgroup to get clarifications on the assignments.

January 29: The Scheme project is now on the projects page (see new link above).

January 25: I've just added Scheme and Prolog reference links above, including a small program to get you started with Scheme.

January 23: Now that we have two tutorial sections, you are required to attend the section you've been assigned to: if your last name is in the range L-Z, you must attend the second hour.

January 23: A drop box for this course will be setup today in the usual place. Sorry for having it ready earlier. Note that assignments must be submitted at the Erindale campus. If you don't want to go there on Wednesday, you should submit your assignment at the previous tutorial.

January 15: Additional copies of the texts have been ordered. You should expect to find Sebesta and Dybvig at the bookstore within a week. Clocksin+Mellish will take longer, but should be there before we start Prolog.

January 15: Some corrections were made to homework 1. Please reprint it if you have the old version. The new version says "Revised" on the first line.

January 14: Homework 1 is now available on the homeworks page (see above).

January 13: I finally got around to putting this page together. Please let me know if you think any information is missing or incorrect.