Choreographic Quick Changes: First-Class Location (Set) Polymorphism
Ashley Samuelson, Andrew K. Hirsch, Ethan Cecchetti
Abstract
Choreographic programming is a promising new paradigm for programming concurrent systems where a developer writes a single centralized program that compiles to individual programs for each node. Existing choreographic languages, however, lack critical features integral to modern systems, like the ability of one node to dynamically compute who should perform a computation and send that decision to others. This work addresses this gap with λ QC, the first typed choreographic language with first class process names and polymorphism over both types and (sets of) locations. λ QC also improves expressive power over previous work by supporting algebraic and recursive data types as well as multiply-located values. We formalize and mechanically verify our results in Rocq, including the standard choreographic guarantee of deadlock freedom.
Ask about this paper
Your agent reads all of it.
Lune indexed this paper to the last equation, along with the top-tier papers that cite it. Ask a question and the answer quotes them.
Your agent calls
Luneget_paper_fulltext
Free to start. No credit card required.
Terminal
Install the CLIlune papers fulltext ee93153c-e97a-4083-b0cb-0fc41c2584e7Builds on3
- Pirouette: higher-order typed functional choreographiesAndrew K. Hirsch, Deepak GargPOPL 2022 · 31 citations
- Deadlock-Free Separation Logic: Linearity Yields Progress for Dependent Higher-Order Message PassingJules Jacobs, Jonas Kastberg Hinrichsen, Robbert KrebbersPOPL 2024 · 12 citations
- Efficient, Portable, Census-Polymorphic Choreographic ProgrammingMako Bates, Shun Kashiwa, Syed Jafri, Gan Shen et al.PLDI 2025 · 5 citations
Related papers
- Multiparty motion coordination: from choreographies to robotics programsRupak Majumdar, Nobuko Yoshida, Damien ZuffereyOOPSLA 2020 · 14 citations
- Type-Safe Dynamic Placement with First-Class Placed ValuesGeorge Zakhour, Pascal Weisenburger, Guido SalvaneschiOOPSLA 2023 · 2 citations
- Veracity: declarative multicore programming with commutativityAdam Chen, Parisa Fathololumi, Eric Koskinen, Jared PincusOOPSLA 2022 · 2 citations
- Zooid: a DSL for certified multiparty computation: from mechanised metatheory to certified multiparty processesDavid Castro-Perez, Francisco Ferreira, Lorenzo Gheri, Nobuko YoshidaPLDI 2021 · 25 citations
- Semantics for variational Quantum programmingXiaodong Jia, Andre Kornell, Bert Lindenhovius, Michael W. Mislove et al.POPL 2022 · 15 citations
