University of Toronto - Winter 2007
Department of Computer Science

CSC 324: Principles of Programming Languages

Assignment 6
Prolog

This page contains links to all relevant documents for Assignment 6.


Understanding your A6 mark breakdown

Our CSC324 TA, Christian Fritz, marked A6. (Thanks, Christian.) The marking scheme is here.

A6 Q1 was handmarked. A6 Q2 and Q3 were automarked for correctness, and then visually inspected to confirm that they were not solved using a "brute force" (BF) approach. If they were, then marks were deducted. Q3 was also handmarked in cases where the score was low, to see whether we could give students partial marks for solutions that had the right idea (RI) but didn't work. In these cases we gave up to +10 for Q3a and up to +5 for Q3b (but generally the maximum, i.e. 10 and 5 resp.). Since Q3 used predicates from Q2, we tried not to penalize you twice for errors in Q2. As such, we ran Q3 with both the student's solution to Q2, and with our own, and took the max score. This is why you have 2 sets of automarks for Q3 on your automarker printout.

Your A6 feedback comprises a printout of the automarker as well as a handwritten summary of marks. The marks likely look something like the following:


Specification of the Assignment

Assignment 6 Handout: PDF.
Please also read the following. Further details can be found on the CSC324 newsgroup.

You must follow the following Code Requirements and Marking Information.
Please review the following helpful document on testing.
It's your responsibility to monitor the newsgroup and the A6 Clarifications Page for any clarifications or corrections. documentation.


Tips

Emacs Prolog Mode

Here is a very useful Emacs Prolog mode and here are instructions for setting it up, which are basically the lines you have to add to your .emacs file in your home folder. It sets ".pl" to be the default extension for Prolog file, which is what SWI uses.

Of course, you can also use other editors than Emacs, but if you decide to use it, this Prolog mode can be very useful as it already does some syntax checking for you. This way it can save you a lot of time when e.g. looking for the missing ',' in your code.




Back to the main page