Choreographies as Macros
Alexander Bohosian (Department of Computer Science, Engineering University at Buffalo), Andrew K. Hirsch (Department of Computer Science, Engineering University at Buffalo)

TL;DR
This paper introduces Choret, a new choreographic programming language built with Racket macros, which simplifies the development of concurrent systems by reusing infrastructure and enhancing functionality.
Contribution
It presents Choret, a choreographic language leveraging Racket macros to streamline implementation and improve correctness in concurrent programming.
Findings
Choret enables faster development of choreographic systems.
Macros in Racket facilitate reusable infrastructure for Choret.
Choret improves correctness in choreographic programming.
Abstract
Concurrent programming often entails meticulous pairing of sends and receives between participants to avoid deadlock. Choreographic programming alleviates this burden by specifying the system as a single program. However, there are more applications than implementations of choreographies, and developing new implementations takes a lot of time and effort. Our work uses Racket to expedite building a new choreographic language called Choret. Racket has a powerful macro system which allows Choret to reuse much of its infrastructure for greater functionality and correctness.
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.
