Contracts for concurrency

Author:

Nienaltowski Piotr1,Meyer Bertrand2,Ostroff Jonathan S.3

Affiliation:

1. Praxis High Integrity Systems Limited, 20 Manvers Street, BA1 1PX, Bath, UK

2. ETH Zurich, Zurich, Switzerland

3. York University, Toronto, Canada

Abstract

Abstract The SCOOP model extends the Eiffel programming language to provide support for concurrent programming. The model is based on the principles of Design by Contract. The semantics of contracts used in the original proposal (SCOOP_97) is not suitable for concurrent programming because it restricts parallelism and complicates reasoning about program correctness. This article outlines a new contract semantics which applies equally well in concurrent and sequential contexts and permits a flexible use of contracts for specifying the mutual rights and obligations of clients and suppliers while preserving the potential for parallelism. We argue that it is indeed a generalisation of the traditional correctness semantics. We also propose a proof technique for concurrent programs which supports proofs—similar to those for traditional non-concurrent programs—of partial correctness and loop termination in the presence of asynchrony.

Publisher

Association for Computing Machinery (ACM)

Subject

Theoretical Computer Science,Software

Reference22 articles.

1. Adrian C (2002) SCOOP for SmallEiffel. draft available online at http://www.chez.com/cadrian/eiffel/scoop.html June 2002

2. Arslan V Meyer B (2006) Asynchronous exceptions in concurrent object-oriented programming. In: International Symposium on Concurrency Real-Time and Distribution in Eiffel-like Languages (CORDIE) York UK July 2006

3. Bailly A (2004) Formal semantics and proof system for SCOOP. White paper October 2004

4. Barnett M Leino KRM Schulte W (2004) The Spec programming system: an overview. In: CASSIS vol 3362 of LNCS. Springer Heidelberg

Cited by 8 articles. 订阅此论文施引文献 订阅此论文施引文献,注册后可以免费订阅5篇论文的施引文献,订阅后可以查看论文全部施引文献

1. Modelling and Testing Requirements via Executable Abstract State Machines;2018 IEEE 8th International Model-Driven Requirements Engineering Workshop (MoDRE);2018-08

2. On the Effectiveness of Contracts as Test Oracles in the Detection and Diagnosis of Functional Faults in Concurrent Object-Oriented Software;IEEE Transactions on Software Engineering;2014-10-01

3. A Module System for Domain-Specific Languages;Theory and Practice of Logic Programming;2014-07

4. Processors and Their Collection;Multicore Software Engineering, Performance, and Tools;2012

5. A Theory of Design-by-Contract for Distributed Multiparty Interactions;CONCUR 2010 - Concurrency Theory;2010

同舟云学术

1.学者识别学者识别

2.学术分析学术分析

3.人才评估人才评估

"同舟云学术"是以全球学者为主线,采集、加工和组织学术论文而形成的新型学术文献查询和分析系统,可以对全球学者进行文献检索和人才价值评估。用户可以通过关注某些学科领域的顶尖人物而持续追踪该领域的学科进展和研究前沿。经过近期的数据扩容,当前同舟云学术共收录了国内外主流学术期刊6万余种,收集的期刊论文及会议论文总量共计约1.5亿篇,并以每天添加12000余篇中外论文的速度递增。我们也可以为用户提供个性化、定制化的学者数据。欢迎来电咨询!咨询电话:010-8811{复制后删除}0370

www.globalauthorid.com

TOP

Copyright © 2019-2024 北京同舟云网络信息技术有限公司
京公网安备11010802033243号  京ICP备18003416号-3