On Asynchrony and Choreographies

11/30/2017
by   Luís Cruz-Filipe, et al.
0

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.

READ FULL TEXT

page 1

page 2

page 3

page 4

research
11/23/2017

That's Enough: Asynchrony with Standard Choreography Primitives

Choreographies are widely used for the specification of concurrent and d...
research
04/24/2018

Connectors meet Choreographies

We present Cho-Reo-graphies (CR), a new language model that unites two p...
research
07/21/2018

An Asynchronous soundness theorem for concurrent separation logic

Concurrent separation logic (CSL) is a specification logic for concurren...
research
10/11/2017

A Semantics Comparison Workbench for a Concurrent, Asynchronous, Distributed Programming Language

A number of high-level languages and libraries have been proposed that o...
research
03/24/2022

Asynchronous Sessions with Input Races

We propose a calculus for asynchronous multiparty sessions where input c...
research
05/24/2022

Asynchronous Neural Networks for Learning in Graphs

This paper studies asynchronous message passing (AMP), a new paradigm fo...
research
06/23/2021

Particle-In-Cell Simulation using Asynchronous Tasking

Recently, task-based programming models have emerged as a prominent alte...

Please sign up or login with your details

Forgot password? Click here to reset