Scaling contracts to realistic languages

Title:
Scaling contracts to realistic languages
Creator:
Strickland, T. Stephen (Author)
Contributor:
Felleisen, Matthias (Advisor)
Flatt, Matthew (Committee member)
Wand, Mitchell (Committee member)
Shivers, Olin (Committee member)
Publisher:
Boston, Massachusetts : Northeastern University, 2012
Date Accepted:
July 2012
Date Awarded:
May 2013
Type of resource:
Text
Genre:
Dissertations
Format:
electronic
Digital origin:
born digital
Abstract/Description:
Contracts allow programmers to specify the expected behavior and use of program components separately from the code of the components themselves. Since Bertrand Meyer introduced contracts to working programmers via the Eiffel programming language, Eiffel-like contract systems have been designed for many other object-oriented languages. Contract systems are not limited to object-oriented programming; Findler and Felleisen showed how to add contracts to languages with higher-order functions and formalized the notions of contract boundaries and blame.

Currently, contract systems come with two major omissions: monitoring the invariants of mutable data structures and protecting first-class components, which are used in the construction of large-scale software projects. This dissertation presents the design and implementation of contract systems that cover these language features. These contracts are expressive enough to describe the protection of these values and efficient enough that performance concerns do not preclude their use.
Subjects and keywords:
contract systems
computer programming
Computer Sciences
Programming Languages and Compilers
DOI:
https://doi.org/10.17760/d20002780
Permanent Link:
http://hdl.handle.net/2047/d20002780
Use and reproduction:
In Copyright: This Item is protected by copyright and/or related rights. You are free to use this Item in any way that is permitted by the copyright and related rights legislation that applies to your use. For other uses you need to obtain permission from the right-holder(s). (http://rightsstatements.org/vocab/InC/1.0/)
Copyright restrictions may apply.

Downloads