Proceedings of the 2013 ACM SIGPLAN International Conference on Object Oriented Programming Systems Languages &Amp; Application 2013
DOI: 10.1145/2509136.2509548
|View full text |Cite
|
Sign up to set email alerts
|

Option contracts

Abstract: Many languages support behavioral software contracts so that programmers can describe a component's obligations and promises via logical assertions in its interface. The contract system monitors program execution, checks whether the assertions hold, and, if not, blames the guilty component. Pinning down the violator gets the debugging process started in the right direction. Quality contracts impose a serious runtime cost, however, and programmers therefore compromise in many ways. Some turn off contracts for d… Show more

Help me understand this report

Search citation statements

Order By: Relevance

Paper Sections

Select...
2
1
1
1

Citation Types

0
10
0

Year Published

2015
2015
2023
2023

Publication Types

Select...
2
2
1

Relationship

1
4

Authors

Journals

citations
Cited by 12 publications
(10 citation statements)
references
References 28 publications
0
10
0
Order By: Relevance
“…Paranoid Scientist has not been optimized for speed, though such optimization is possible in the future. Previous work has demonstrated improved performance of runtime checks through a client-server architecture [10] and through optional contracts [11]. Performance could also be improved by producing a certificate during runtime which can be checked after execution.…”
Section: Limitationsmentioning
confidence: 99%
“…Paranoid Scientist has not been optimized for speed, though such optimization is possible in the future. Previous work has demonstrated improved performance of runtime checks through a client-server architecture [10] and through optional contracts [11]. Performance could also be improved by producing a certificate during runtime which can be checked after execution.…”
Section: Limitationsmentioning
confidence: 99%
“…Dimoulas et al (2013) introduce option contracts, which allow modules to optionally enforce contracts or eschew contracts while adopting responsibility, avoiding unnecessary contract enforcement. It is possible to replicate this behavior in λ ⇒ /c , using the same pattern of encoding and structures as Dimoulas et al (2013) in the presence of the option strategy. Such an implementation would be particularly effective in a chaperone-based system.…”
Section: Additional Software Contract Verification Techniquesmentioning
confidence: 99%
“…Researchers have proposed myriad contract enforcement strategies in response to these rising complexities, including lazy monitors (Degen et al, 2009;Chitil, 2012), concurrent monitoring systems (Dimoulas et al, 2009), optional enforcement (Dimoulas et al, 2013), and probabilistic contract verification (Moore et al, 2016;Hickey, 2018).…”
Section: Introductionmentioning
confidence: 99%
See 1 more Smart Citation
“…SuperContra goes beyond such approaches to provide DbC that is both language and run-time agnostic. Other DbC advances target runtime overhead [24] and the complexity of writing contracts [25], [26]. SuperContra shares this motivation, but addresses the problem in a different way.…”
Section: Related Workmentioning
confidence: 99%