Communications in Choreographies, Revisited

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

Choreographic Programming is a paradigm for developing correct-by-construction concurrent programs, by writing high-level descriptions of the desired communications and then synthesising process implementations automatically. So far, choreographic programming has been explored in the monadic setting: interaction terms express point-to-point communications of a single value. However, real-world systems often rely on interactions of polyadic nature, where multiple values are communicated among two or more parties, like multicast, scatter-gather, and atomic exchanges. We introduce a new model for choreographic programming equipped with a primitive for grouped interactions that subsumes all the above scenarios. Intuitively, grouped interactions can be thought of as being carried out as one single interaction. In practice, they are implemented by processes that carry them out in a concurrent fashion. After formalising the intuitive semantics of grouped interactions, we prove that choreographic programs and their implementations are correct and deadlock-free by construction.

READ FULL TEXT

page 1

page 2

page 3

page 4

research
02/21/2021

Certifying Choreography Compilation

Choreographic programming is a paradigm for developing concurrent and di...
research
05/02/2022

Reversing an Imperative Concurrent Programming Language

We introduce a method of reversing the execution of imperative concurren...
research
04/27/2023

Reasoning about Choreographic Programs

Choreographic programming is a paradigm where a concurrent or distribute...
research
03/07/2023

Certified Compilation of Choreographies with hacc

Programming communicating processes is challenging, because it requires ...
research
03/07/2023

Real-World Choreographic Programming: An Experience Report

Choreographic programming is a programming paradigm, whereby the overall...
research
11/05/2021

Exception Handling on Multiparty Interactions

In designing distributed and parallel systems there are several approach...
research
03/07/2018

Correct by Construction Resource-based Process Composition

The need for rigorous process composition is encountered in many situati...

Please sign up or login with your details

Forgot password? Click here to reset