[Colloq] Thesis Defense: Foundations for Behavioral Contracts
Jessica Biron
bironje at ccs.neu.edu
Wed Dec 5 08:02:39 EST 2012
The College of Computer and Information Science presents a PhD thesis
defense :
Speaker: Christos Dimoulas
Date: Wednesday December 12, 2012 at 14:30
Location: 366 WVH
Title: Foundations for Behavioral Contracts
Abstract:
Contracts are a popular mechanism for enhancing the interface of
components. In the world of first-order functions, programmers embrace
contracts because they write them in a familiar language and easily
understand them as a pair of a pre-condition and a post-condition. In a
higher-order world, contracts offer the same expressiveness to
programmers but their meaning subtly differs from the familiar
first-order notion. For instance, it is unclear what the behavior of
dependent contracts for higher-order functions or of contracts for
mutable data should be. As a consequence, it is difficult to design
monitoring systems for such higher-order worlds.
In response to this problem, we investigate complete monitors, a formal
framework for deciding if a contract system is correct. The intuition
behind the framework is that a correct contract system should:
-- mediate the exchange of values between contracted components
-- and blame correctly in case of contract violations.
The framework reveals flaws in the semantics for dependent contracts
from the literature and suggests a natural fix. In addition, we
demonstrate the usefulness of the framework for language design with a
language with contracts for mutable data and a language that mixes typed
and untyped imperative programs. The final contribution is the provably
correct design of a novel form of contracts, dubbed options contracts,
that mix contract checking with random and probabilistic checking.
Committee:
Matthias Felleisen
Amal Ahmed
Mitch Wand
Cormac Flanagan (UCSC)
Jessica Biron
Administrative Assistant – Office of the Dean and CCIS Development
College of Computer and Information Science
Northeastern University
202 West Village H
617-373-5204
bironje at ccs.neu.edu
http://www.ccs.neu.edu/
More information about the Colloq
mailing list