Abstract
Choreographic Programming is a paradigm for developing concurrent programs that are deadlock-free by construction, as a result of programming communications declaratively and then synthesising process implementations automatically. Despite strong interest on choreographies, a foundational model that explains which computations can be performed with the hallmark constructs of choreographies is still missing. In this work, we introduce Core Choreographies (CC), a model that includes only the core primitives of choreographic programming. Every computable function can be implemented as a choreography in CC, from which we can synthesise a process implementation where independent computations run in parallel. We discuss the design of CC and argue that it constitutes a canonical model for choreographic programming.
Originalsprog | Engelsk |
---|---|
Tidsskrift | Theoretical Computer Science |
Vol/bind | 802 |
Sider (fra-til) | 38-66 |
Antal sider | 29 |
ISSN | 0304-3975 |
DOI | |
Status | Udgivet - 8. jan. 2020 |