Regardless of whether I ever get around to “summarizing the status quo of CP”, I’m pleased to announce that I’ll be presenting our recent work at PLDI in Seoul in June.
Our paper Efficient, Portable, Census-Polymorphic Choreographic Programming
has been accepted into PLDI25!
This paper combines some of my earliest work on CP (the 𐤄λsmall language, now re-named λC),
my own Haskell library MultiChor,
and Rust and TypeScript libraries by Shun Kashiwa
that have been upgraded to be basically feature-equivalent with MultiChor.
Based on presentations at last year’s PLID, I think it’s somewhat likely that the basic paradigm used by MultiChor is going to be the version of CP
that sees real industry use,
and MultiChor is ready for use in the wild, except that it’s missing error-handling features.
While we desperately need good ways to talk about error handling in a choreographic setting, there’s also room for improvement on the theory side. My work in the past month has been to further reduce the complexity of the core mechanics of MultiChor, to distinguish what’s fundamental to CP from emergent development patterns.
In the mean time, read the paper and I hope to see you in Seoul!