University of Virginia, Department of Computer Science
CS655: Programming Languages, Spring 2000

Remaining Calendar

The due dates for the remainder of the course are:

Tuesday, 21 March (5pm)Attorneys and Witnesses - Depositions
Thursday, 23 March (11:59pm)Project Preliminary Report
Monday, 3 April (11:59pm)Jurors only - Position Paper 4 (Mock Trial Judgement)
Tuesday, 11 April (in class)Problem Set 3
Monday, 17 April (11:59pm)Position Paper 5
Friday, 28 AprilProject Final Report
Monday, 1 May, 6:30-9pmProject Rotunda Presentations
Saturday, 6 May - Wednesday, 10 May Final Exam (you will pick times somewhere in those days)

Nothing else will be assigned except for small, ungraded emails to get you thinking about the reading assignments. These will also be opportunities to get bonus points by solving "challenge problems".

Project groups are also encouraged to schedule meetings with Dave and John throughout the remainder of the course.


Expected lecture topics (Subject to change) for the remainder of the course:

Functional Languages
Tuesday, 21 MarchFixed Points
Thursday, 23 MarchFunctional Languages, Type Inference
Mock Trial
Tuesday, 28 MarchMock Trial Part 1: Openings, Prosecution Witnesses
Thursday, 30 MarchMock Trial Part 2: Defense Witnesses, Closings
Denotational Semantics
Tuesday, 4 AprilDenotational Semantics
Thursday, 6 AprilType Inference Revisited
Distributed Programming
Tuesday, 11 AprilMonitors, Transactions
Thursday, 13 AprilDataflow
Research Topics
Tuesday, 18 AprilAspect-Oriented Programming
Thursday, 20 AprilGarbage Collection
Tuesday, 25 AprilStatic Checking, Type Qualifiers
Thursday, 27 AprilOther Ways to Program
Project Presentations
Monday, 1 May, 6:30pm-9pm Student project presentations, in the Rotunda Lower West Oval Room
PL Jeopardy
Tuesday, 2 MayWho wants to be a hecto-billionaire?

Final Exam

A signup sheet will be passed out the last week of class to schedule an oral final exam. The questions on the final will be loosely derived from the questions on class Manifests. This means if the manifest 1 has a question, What are some design tradeoffs for programming languages? a possible question for your final could be Explain is the design tradeoff between safety and efficiency in designing a programming language? and a good answer would require you to illustrate the tradeoff with examples from specific programming languages. A manifest question like, How to use operational semantics to prove properties about a language means the final may include a question that requires you to use operation semantics to prove a particular property about a specific language.

The format of the final will be:

You will be evaulated on the correctness, clarity and quality of the content of your answer, but not on your oral presentation skills.

Finals will be videotaped so that we may review your answers. No one besides the course staff will ever see you exam video.

CS 655 University of Virginia
CS 655: Programming Languages
Last modified: Mon Feb 26 12:48:25 2001