CS 510: Details

Class Times

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


David Walker - 412 CS Building - 258-7654 - dpw at 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


bulletBenjamin Pierce's new book "Types and Programming Languages" is required for the course.  You can purchase it in the campus store.
bulletSupplementary reading will be taken from Robert Harper's manuscript "Programming Languages: Theory and Practice." 
bulletFor those who do not know the programming language Standard ML, a reference book on the language will be very 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(s) grading the homework will do the following:

bulletLook through the homeworks to get a sense of the range of the solutions
bulletCome to me to discuss the grading scheme
bulletGrade the homework according to the grading scheme
bulletReturn the homeworks to me within a week of the due date. 

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

Testing & Evaluation

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

Grades will be determined by weighting homeworks, tests and exams as follows:

bulletHomeworks: 40%   [weights among homeworks are not necessarily distributed evenly -- the longer and more challenging homeworks will be worth correspondingly more]
bulletMidterm: 25%
bulletFinal: 35%