Scaling contracts to realistic languages

Scaling contracts to realistic languages(2012)

引用 23|浏览16
暂无评分
摘要
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.
更多
查看译文
关键词
Eiffel programming language,realistic language,expected behavior,object-oriented programming,efficient enough,object-oriented language,contract boundary,Eiffel-like contract system,contract system,language feature,Bertrand Meyer
AI 理解论文
溯源树
样例
生成溯源树,研究论文发展脉络
Chat Paper
正在生成论文摘要