Article,
Choral: Object-oriented Choreographic Programming
Affiliations
- [1] INRIA, Sophia Antipolis, France [NORA names: France; Europe, EU; OECD];
- [2] Univ Bologna, Dept Comp Sci & Engn, Mura Anteo Zamboni 7, I-40126 Bologna, Italy [NORA names: Italy; Europe, EU; OECD];
- [3] Univ Southern Denmark, Dept Math & Comp Sci, Campusvej 55, DK-5230 Odense, Denmark [NORA names: SDU University of Southern Denmark; University; Denmark; Europe, EU; Nordic; OECD]
Abstract
Choral comes with a compiler that, given a choreography, generates an implementation for each of its roles. These implementations are libraries in pure Java, whose types are under the control of the Choral programmer. Developers can then modularly compose these libraries in their programs, to participate correctly in choreographies. Choral is the first incarnation of choreographic programming offering such modularity, which finally connects more than a decade of research on the paradigm to practical software development.
Keywords
Choreographies,
communication,
higher-kinded types