paperbot · PL 论文追踪

全部论文 待读 收藏

P2 Choreographic Quick Changes: First-Class Location (Set) Polymorphism

编排式快速变更:一等位置(集合)多态
OOPSLA 9(OOPSLA2)2025匹配度 2/10 · 论文属于编排式编程、并发类型系统与Rocq形式化验证,核心贡献在PL理论而非静态分析应用;未涉及LLM/Agent、ML系统、浮点程序分析或贝叶斯程序分析,与用户画像中的核心交叉方向不匹配。引用 0 inbox
Ashley Samuelson, Andrew K. Hirsch, Ethan Cecchetti
crossref: 2026-09-10

AI 速览

一句话:提出首个带类型且支持一等进程名与位置集合多态的编排式语言 λQC,并在 Rocq 中验证其无死锁性。

编排式编程让开发者编写单一集中式程序,再编译为各节点程序,但现有编排式语言缺乏现代系统所需的关键特性,例如节点动态计算应由谁执行并把决定告知其他节点。本文提出 λQC,这是首个带类型的一等进程名编排式语言,支持对类型和位置集合的多态,并支持代数与递归数据类型以及多重定位值,从而提升表达力。作者在 Rocq 中形式化并机器验证主要结果,包括编排式编程标准的无死锁保证。

问题
现有编排式语言缺少一等进程名以及对类型和位置集合的多态,难以让节点动态决定并传播应由谁执行计算,也缺乏对代数/递归数据类型和多重定位值的支持。
方法
提出 λQC:一种带类型的编排式语言,具有一等进程名、类型与位置集合多态、代数与递归数据类型、多重定位值;并在 Rocq 中形式化其语义与性质。
评估
在 Rocq 中机器验证主要结果,包括该编排式语言的无死锁性。
原文摘要(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.

链接与引用

DOI 原文 · PDF(开放获取) ·

BibTeX
@article{paperbot3008,
  title = {Choreographic Quick Changes: First-Class Location (Set) Polymorphism},
  author = {Ashley Samuelson and Andrew K. Hirsch and Ethan Cecchetti},
  journal = {Proceedings of the ACM on Programming Languages},
  volume = {9},
  number = {OOPSLA2},
  year = {2025},
  doi = {10.1145/3763114}
}