ICFP 2023
Mon 4 - Sat 9 September 2023 Seattle, Washington, United States
Tue 5 Sep 2023 15:30 - 16:00 at A - Grand Ballroom 2 - Concurrency and distribution Chair(s): Satnam Singh

Choreographic programming is an emerging paradigm for programming distributed systems. In choreographic programming, the programmer describes the behavior of the entire system as a single, unified program – a <em>choreography</em> – which is then compiled to individual programs that run on each node, via a compilation step called endpoint projection. We present a new model for functional choreographic programming where choreographies are expressed as computations in a monad. Our model supports cutting-edge choreographic programming features that enable modularity and code reuse: in particular, it supports <em>higher-order</em> choreographies, in which a choreography may be passed as an argument to another choreography, and <em>location-polymorphic</em> choreographies, in which a choreography can abstract over nodes. Our model is implemented in a Haskell library, <em>HasChor</em>, which lets programmers write choreographic programs while using the rich Haskell ecosystem at no cost, bringing choreographic programming within reach of everyday Haskellers. Moreover, thanks to Haskell's abstractions, the implementation of the HasChor library itself is concise and understandable, boiling down endpoint projection to its short and simple essence.

Tue 5 Sep

Displayed time zone: Pacific Time (US & Canada) change

15:00 - 16:00
Concurrency and distributionICFP Papers and Events at A - Grand Ballroom 2
Chair(s): Satnam Singh Groq
15:00
30m
Talk
Special Delivery: Programming with Mailbox Types
ICFP Papers and Events
Simon Fowler University of Glasgow, Duncan Paul Attard University of Glasgow, Franciszek Sowul University of Glasgow, Simon J. Gay University of Glasgow, UK, Phil Trinder University of Glasgow
DOI Pre-print
15:30
30m
Talk
HasChor: Functional Choreographic Programming for All (Functional Pearl)Functional PearlDistinguished Paper
ICFP Papers and Events
Gan Shen University of California, Santa Cruz, USA, Shun Kashiwa University of California, Santa Cruz, Lindsey Kuper University of California, Santa Cruz
DOI Pre-print