Homepage for CSC 324,
Fall 2003
Principles
of Programming Languages
University of Toronto at Mississauga
ANNOUNCEMENTS:
Tentative final grades are now available.
Please check your term marks and report any problems to the instructor (bonner).
Course information sheet:
in Postscript.
in Adobe PDF.
Tutorials:
Friday 2-3pm, SE3130.
Tutor: Alfredo Gabaldon
email: etcsc324
Course news group:
Read
the newsgroup.
Post
a message to the newsgroup.
Electronic submission:
Click here
to submit an assignment.
No late assignments accepted.
FINAL EXAM:
3 hours, closed book.
One hand-written, double-sided 8.5x11 inch "cheat sheet" is allowed.
No typed or photo-copied sheets are allowed. No other aids are allowed.
Will cover everything in the course, including Scheme, ML,
Prolog, and context free grammars.
Be sure you understand all the homework assignments and their solutions thoroughly.
Here is last year's final exam, including some solutions.
ASSIGNMENT 1A:
as Adobe PDF file.
as Microsoft Word document.
Due Friday September 26 at 2pm (just before tutorial).
Submission instructions.
Sample solutions.
ASSIGNMENT 1B:
as Adobe PDF file.
Late assignments will not be accepted.
Submissions instructions are the same as for Assignment 1A.
Sample solutions.
ASSIGNMENT 2A:
in Postscript.
in Adobe PDF.
Due Friday October 24 at 2pm (just before tutorial).
Submission instructions.
ASSIGNMENT 2B:
in Postscript.
in Adobe PDF.
Due Friday November 14 at 2pm (just before tutorial).
Grades have now been attached to each question.
Hint 1: if your solutions in Q6 involve the use of ML's built-in lists,
or of the append function, then your solution is probably wrong.
Hint 2: In Question 6, try defining your own linked-list datatype, just as you defined your own tree datatype in Question 5.
In Question 6, if you can't get iteration to work, then for part marks, you may use recursion.
Submission instructions.
Sample solutions.
ASSIGNMENT 3A:
in Postscript.
in Adobe PDF.
Due Friday November 28 at 2pm (just before tutorial).
ASSIGNMENT 3B:
in Postscript.
in Adobe PDF.
Due Friday Dec 5 at 2pm (just before tutorial).
Prolog lecture slides:
Introduction
Unification
Reasoning
Function terms
Prolog examples:
Quicksort
Queues
Additional course information:
Tutorial web page
using Scheme.
Lecture slides on
higher-order programming.
using ML.
references in ML.
using XSB Prolog.
Lecture slides on context free grammars:
slides 1 and
slides 2.
Links to programming languages used in this course:
MIT Scheme
Standard ML of New Jersey
XSB Prolog