Content area

Abstract

We present PolyChor\(\lambda\), a language for higher-order functional choreographic programming—an emerging paradigm for concurrent programming. In choreographic programming, programmers write the desired cooperative behaviour of a system of processes and then compile it into an implementation for each process, a translation called endpoint projection. Unlike its predecessor, Chor\(\lambda\), PolyChor\(\lambda\) has both type and process polymorphism inspired by System F\(_\omega\). That is, PolyChor\(\lambda\) is the first (higher-order) functional choreographic language which gives programmers the ability to write generic choreographies and determine the participants at runtime. This novel combination of features also allows PolyChor\(\lambda\) processes to communicate distributed values, leading to a new and intuitive way to write delegation. While some of the functional features of PolyChor\(\lambda\) give it a weaker correspondence between the semantics of choreographies and their endpoint-projected concurrent systems than some other choreographic languages, we still get the hallmark end result of choreographic programming: projected programmes are deadlock-free by design.

Details

Title
Alice or Bob?: Process polymorphism in choreographies
Author
Graversen, Eva 1 ; Hirsch, Andrew K 2 ; Montesi, Fabrizio 3   VIAFID ORCID Logo 

 Department of Mathematics and Computer Science, University of Southern Denmark, Odense, Denmark (e-mail: [email protected]
 Department of Computer Science and Engineering, University at Buffalo, SUNY, Buffalo, NY 14068, USA (e-mail: [email protected]
 Department of Mathematics and Computer Science, University of Southern Denmark, Odense, Denmark (e-mail: [email protected]
Publication title
Volume
34
Publication year
2024
Publication date
Jan 2024
Publisher
Cambridge University Press
Place of publication
Cambridge
Country of publication
United Kingdom
ISSN
09567968
e-ISSN
14697653
Source type
Scholarly Journal
Language of publication
English
Document type
Journal Article
Publication history
 
 
Online publication date
2024-01-23
Milestone dates
2023-01-26 (Received); 2023-09-15 (Revised); 2023-11-13 (Accepted)
Publication history
 
 
   First posting date
23 Jan 2024
ProQuest document ID
2917434703
Document URL
https://www.proquest.com/scholarly-journals/alice-bob-process-polymorphism-choreographies/docview/2917434703/se-2?accountid=208611
Copyright
© The Author(s), 2024. Published by Cambridge University Press. This work is licensed under the Creative Commons Attribution License This is an Open Access article, distributed under the terms of the Creative Commons Attribution licence (https://creativecommons.org/licenses/by/4.0/), which permits unrestricted re-use, distribution and reproduction, provided the original article is properly cited. (the “License”). Notwithstanding the ProQuest Terms and Conditions, you may use this content in accordance with the terms of the License.
Last updated
2024-08-27
Database
ProQuest One Academic