On Asynchrony and Choreographies

Research output: Contribution to journalConference articleResearchpeer-review

139 Downloads (Pure)

Abstract

Choreographic Programming is a paradigm for the development of concurrent software, where deadlocks are prevented syntactically. However, choreography languages are typically synchronous, whereas many real-world systems have asynchronous communications. Previous attempts at enriching choreographies with asynchrony rely on ad-hoc constructions, whose adequacy is only argued
informally. In this work, we formalise the properties that an asynchronous semantics for choreographies should have: messages can be sent without the intended receiver being ready, and all sent messages are eventually received. We explore how out-of-order execution, used in choreographies for modelling concurrency, can be exploited to endow choreographies with an asynchronous semantics. Our approach satisfies the properties we identified. We show how our development yields a pleasant correspondence with FIFO-based asynchronous messaging, modelled in a process calculus, and discuss how it can be adopted in more complex choreography models.
Original languageEnglish
Book seriesElectronic Proceedings in Theoretical Computer Science
Volume261
Pages (from-to)76-90
ISSN2075-2180
DOIs
Publication statusPublished - 2017
Event10th Interaction and Concurrency Experience -
Duration: 22. Jun 201723. Jun 2017

Conference

Conference10th Interaction and Concurrency Experience
Period22/06/201723/06/2017

Fingerprint

Dive into the research topics of 'On Asynchrony and Choreographies'. Together they form a unique fingerprint.

Cite this