ChoRus: Library-Level Choreographic Programming in Rust
In the choreographic programming (CP) paradigm, a single program called a choreography describes the global behavior of a distributed system of nodes. The choreography is then compiled to a collection of node-local programs via endpoint projection. The recent development of library-level choreographic programming, in which choreographies and the projection mechanism are expressed as programs in an existing host language, has the potential to improve the accessibility and practicality of CP by bringing it to mainstream languages.
In this paper, we present ChoRus, a new library-level CP framework for the Rust programming language. ChoRus implements endpoint projection by dynamically injecting customized implementations of choreographic operators depending on the target node. We give a tour of the ChoRus API, discuss the ChoRus approach to endpoint projection, and outline future work for ChoRus and library-level choreographic programming in general.
Mon 24 JunDisplayed time zone: Windhoek change
16:00 - 17:40 | |||
16:00 20mTalk | ChoRus: Library-Level Choreographic Programming in Rust CP Shun Kashiwa University of California, Santa Cruz, Lindsey Kuper University of California, Santa Cruz Pre-print Media Attached | ||
16:20 20mTalk | Klor: Choreographies for the Working Clojurian CP Lovro Lugović University of Southern Denmark, Sung-Shik Jongmans Open University of the Netherlands; CWI Media Attached | ||
16:40 20mTalk | Suki: Choreographed Distributed Dataflow in Rust CP Shadaj Laddad University of California at Berkeley, Alvin Cheung University of California at Berkeley, Joseph M. Hellerstein UC Berkeley Pre-print Media Attached | ||
17:00 20mTalk | Toward Verified Library-Level Choreographic Programming with Algebraic Effects CP Gan Shen University of California, Santa Cruz, USA, Lindsey Kuper University of California, Santa Cruz Pre-print Media Attached | ||
17:20 20mDay closing | Closing CP Lindsey Kuper University of California, Santa Cruz, Saverio Giallorenzo Alma Mater Studiorum - Università di Bologna / INRIA, Marco Peressotti University of Southern Denmark |