A Core Model for Choreographic Programming
Luís Cruz-Filipe, Fabrizio Montesi
[2016].
In proceedings of FACS 2016, pp. 17-35.
Choreographic Programming is a paradigm for developing concurrent programs that are deadlock-free by construction, by 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.
@inproceedings{DBLP:conf/facs2/Cruz-FilipeM16, author = {Lu{\'{\i}}s Cruz{-}Filipe and Fabrizio Montesi}, editor = {Olga Kouchnarenko and Ramtin Khosravi}, title = {A Core Model for Choreographic Programming}, booktitle = {Formal Aspects of Component Software - 13th International Conference, {FACS} 2016, Besan{\c{c}}on, France, October 19-21, 2016, Revised Selected Papers}, series = {Lecture Notes in Computer Science}, volume = {10231}, pages = {17--35}, year = {2016}, url = {https://doi.org/10.1007/978-3-319-57666-4\_3}, doi = {10.1007/978-3-319-57666-4\_3}, timestamp = {Wed, 25 Sep 2019 18:10:28 +0200}, biburl = {https://dblp.org/rec/conf/facs2/Cruz-FilipeM16.bib}, bibsource = {dblp computer science bibliography, https://dblp.org} }
A PDF is available (possibly a preprint):