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

Manifest: Tuesday 29 February 2000
Assignments Due
Thursday, 2 March in class Problem Set 2: Types
Thursday, 2 Mar (5pm)Prosecution Attorneys only - Charges, Witness List and Exhibits
Tuesday, 7 Mar (11am) Email about proof-carrying code (see below)
Tuesday, 7 Mar (5pm)Defense Attorneys only - Witness List and Exhibits

Readings

Read before or after Thursday 2 Mar:
· Barbara Liskov and John Guttag. Abstraction and Specification in Program Development. Chapter 11: A Quick Look at Program Verification. 1986.

An introduction to axiomatic semantics and program verification.

Read before Tuesday 7 Mar:
· George Necula and Peter Lee. Safe Kernel Extensions Without Run-Time Checking. Second Symposium on Operating Systems Design and Implementation (OSDI '96), October, 1996.

You may skip section 3.1. This paper describes proof-carrying code, a practical (?) application of axiomatic semantics. Before 11am Tuesday 7 Mar, send me a three-line email message on whether on not you think proof-carrying code is useful.

Court's Exhibit 1:
· Bjarne Stroustrup. A History of C++: 1979-1991. Paper and talk transcript from History of Programming Languages II conference, 1993.

Jurors: Required reading before trial begins (28 March).
Attorneys: Each team of attorneys should read the whole thing, but you can divide it into parts as you see fit.
Witnesses: Read as much or little as you feel is necessary to prepare you for trial. (Most should probably be reading papers relevant to your witness instead.)
Defendant: Read before planning your deposition questions.

Questions
That which must be proved cannot be worth much.
Fortune cookie quoted on Peter Lee's web page.

CS 655 University of Virginia
CS 655: Programming Languages
cs655-staff@cs.virginia.edu
Last modified: Mon Feb 26 12:48:23 2001