MultiChor: Census Polymorphic Choreographic Programming with Multiply Located Values
Mako Bates, Syed Jafri, Joseph P. Near

TL;DR
MultiChor is a Haskell library enabling polymorphic choreographies that adapt to varying numbers of participants, simplifying reasoning and deadlock detection in distributed programming.
Contribution
It introduces MultiChor, a novel library that supports polymorphic choreographies without extra communication, expanding the expressiveness of choreographic programming in Haskell.
Findings
Supports polymorphism over participant count
Eliminates excess communication for Knowledge-of-Choice
Enables static deadlock checking
Abstract
Choreographic programming is a concurrent paradigm in which a single global program called a choreography describes behavior across an entire distributed network of participants. Choreographies are easier to reason about than separate programs running in parallel, and choreographic programming systems can check for deadlocks statically. We present MultiChor, a library for writing and running choreographies as monadic values in Haskell. Unlike prior Haskell implementations, MultiChor does not require excess communication to handle Knowledge-of-Choice. Unlike all prior general-purpose choreographic languages, MultiChor can express choreographies that are polymorphic over the number of participants.
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
Taxonomy
TopicsBayesian Methods and Mixture Models
