Homepage for CSC 324,
Spring 2009
Principles
of Programming Languages
University of Toronto at Mississauga
ANNOUNCEMENTS:
For the final exam, you are responsible for everything covered in the lectures, the assignments, the tutorials and the midterm.
For the final exam, you may bring a "cheat sheet" with you consisting of one 8.5x11 inch sheet of paper with notes on both sides. The notes must be handwritten and not photocopied. No other aids are allowed.
Assignment 3 is now available. It is due on April 9 at 3pm.
Due to popular demand, I have granted a 48 hour extension for Assignmnet 2B. It is now due on Sunday March 22 at 11:50am.
In Assignment 2b, you should not use ML's built in compose function, (f o g).
The lecture on Monday March 16 is cancelled.
The Prolog lecture slides are now available, below.
Assignment 2B is now available.
The midterm test will start promptly at 12:10pm.
Here are solutions to Assignment 2a.
Solutions to assignments 1a and 1b will be handed out in class on Monday (March 2).
The midterm test will cover everything covered in class and in tutorial up to the last lecture before the test.
Reminder: the midterm test will be in tutorial on Fri March 6. The midterm will be closed book. No aids will be allowed.
Here is a solution to Question 4 in Assignment 1B.
Tentative due dates for all the assignments are given below.
Prerequisites: CSC207H5/270H5, 236H5/238H5, 290H5
Course information sheet
Text: Sethi, Programming Languages: Concepts and Constructs, Addison-Wesley.
Instructor:
Anthony Bonner
email: my last name [at] cs [dot] toronto [dot] edu
phone: 905-828-3813 (UTM), 416-978-7441 (St George)
office: CC 4004 (UTM), BA 4268 (St George)
office hours: MW 3-4pm.
Classes: Monday 4-6pm, SE3131.
Tutorials: Friday 12-1pm, SE 3131.
Tutorials may introduce new material not covered in lectures or in the text.
Teaching Assistant: Ali Juma, ajuma [at] cs [dot] toronto [dot] edu
Midterm test:
will be held during tutorial on Friday March 6.
The midterm will be closed book. No aids will be allowed.
Assignments:
Assignments should be submitted here.
Assignment 1A is now available
Assignment 1B is now available
Assignment 2A is now available
Assignment 2B is now available
Assignment 3 is now available
Prolog lecture slides:
Introduction
Unification
Reasoning
Function terms
Quicksort
Queues
Additional References:
Ullman, Elements of ML programming, Prentice-Hall. Recommended
Paulson, ML for the Working Programmer, Cambridge University Press.
Dybvig, The Scheme Programming Language, Prentice-Hall.
Friedman, Scheme and the Art of Programming, MIT Press and McGraw-Hill.
Clocksin and Mellish, Programming in Prolog, Springer Verlag.
Bratko, Prolog Programming for Artificial Intelligence, Addison-Wesley.
Additional course information:
using PLT Scheme.
Lecture slides on
higher-order programming.
Lecture slides on
software verification.
using ML.
references in ML.
using SWI-Prolog.
Lecture slides on context free grammars:
slides 1 and
slides 2.
Links to programming languages used in this course:
PLT Scheme
Standard ML of New Jersey
SWI-Prolog
Plagiarism and Cheating:
The academic regulations of the University are outlined in the
Code of Behaviour on Academic Matters.
Advice on academic offences