CS 510: Details

Class Times

Monday, Wednesday 11:00-12:20, Room: 302 CS Building


David Walker - 412 CS Building - 258-7654 - dpw@cs.princeton.edu

Course Homepage



Office hours: 11:00-12:00, Fridays.  Otherwise, arranged in advance.  Send me email if you would like to meet.

Graduate Coordinator

Melissa Lawson - 310 CS Building - 258-5387 mml@cs.princeton.edu


We will be using Robert Harper's manuscript "Programming Languages: Theory and Practice" as the primary text for the course.  You can pick up a copy from Tina in 410 CS Building for $25 (please bring a check or money order made to the Princeton Computer Science Department).  Another excellent, supplementary text, is Benjamin Pierce's new book "Types and Programming Languages," which is available from Amazon (among other places).  For those who do not know the programming language Standard ML, a reference book on the language may be helpful.  For more information, see the references web page.


There will be approximately one homework every week.  Homeworks should be attempted individually.  If you cannot come up with an answer after trying for a while then you may discuss the material or the problem with a friend.  If you talk about how to solve a problem with someone then acknowledge them at the top of your homework (name and which parts you worked on together).  Any programs, proofs, or written explanations should be written up by the homework author themselves.

Late homeworks will only be accepted in extraordinary circumstances.


Homeworks will be graded by students in the class.  At the beginning of the term, each student will sign up to grade one homework.  After the homework is collected in a given week, the student grading the homework will do the following:

Look through the homeworks to get a sense of the range of the solutions
Come to me to discuss the grading scheme
Grade the homework according to the grading scheme
Return the homeworks to me within a week of the due date. 

The grader will not have to do the homework that they grade.


There will be a mid-term and a final exam.