English

Choreographies as Macros

Programming Languages 2025-05-28 v1 Distributed, Parallel, and Cluster Computing

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.

Keywords

Cite

@article{arxiv.2505.20845,
  title  = {Choreographies as Macros},
  author = {Alexander Bohosian and Andrew K. Hirsch},
  journal= {arXiv preprint arXiv:2505.20845},
  year   = {2025}
}

Comments

In Proceedings PLACES 2025, arXiv:2505.19078

R2 v1 2026-07-01T02:42:00.279Z