[Pl-seminar] Semantics Seminar Schedule

Mitchell Wand wand at ccs.neu.edu
Tue Feb 10 14:11:08 EST 2004


NU Programming Languages Seminar
Wednesday, February 11, 2004
**306** Egan  Hall, Northeastern University
    (building 60 on http://www.campusmap.neu.edu/)  
1145-145. Bring your lunch.

Matthias Felleisen 

Northeastern University

Software Contracts as Projections

Software contracts help programmers enforce program properties that
the language's type system cannot express. Unlike types, contracts are
(usually) enforced at run-time.  When a contract fails, the contract
system signals an error. Beyond such errors, contracts should have no
other observable (functional) effect on the program's results. In most
implementations, however, the language of contracts is the
full-fledged programming language, which means that programmers may
(intentionally or unintentionally) introduce visible effects into
their contracts.

Here we present the results of investigating the nature of contracts
from a denotational perspective. Specifically, we use SPCF and the
category of observably sequential functions to show that contracts are
best understood as projections. Thus far, the investigation has
produced a significantly faster contract implementation and the
insight that our contract language cannot express all projections,
which in turn has produced a new contract combinator.

Upcoming Events:

Volunteers needed for 2/18 et seq

--Mitch




More information about the pl-seminar mailing list