paperbot · PL 论文追踪

全部论文 待读 收藏

P2 Rast: A Language for Resource-Aware Session Types

Rast:一种资源感知会话类型语言
LMCS vol.Volume 18, Issue 12022匹配度 2/10 · 该论文属于会话类型与资源感知类型系统,核心是并发程序的工作量/跨度刻画与类型重建,未涉及 LLM/Agent、浮点程序分析或贝叶斯程序分析,与用户关注的 PL↔AI 交叉方向基本无关。引用 13 inbox
Ankush Das, Frank Pfenning
crossref: 2026-09-10

AI 速览

一句话:提出并实现 Rast 语言,用算术细化、ergometric 与 temporal 会话类型刻画并发程序的工作量和跨度,并自动重构类型信息。

传统会话类型可保证并发程序遵循双向通信协议,却无法刻画消息之外的性质。Rast 是开源语言实现,在会话类型上引入线性算术细化,并用 ergometric 与 temporal 类型描述程序执行的工作量和跨度;同时加入嵌套参数多态以支持泛型编程。其类型检查基于 Cooper 的 Presburger 算术量词消去算法,带有若干优化和对非线性约束的启发式扩展,并提供重构引擎自动插入细化与资源相关的大多数程序构造。作者用多种示例展示语言表达力,但未在摘要中报告系统性性能评估。

问题
传统会话类型无法描述消息类型之外的性质,尤其是并发程序的工作量与并行复杂度上界。
方法
Rast 在会话类型中加入算术细化、ergometric 与 temporal 类型及嵌套参数多态,并用 Cooper 算法、优化和启发式非线性扩展进行类型检查,支持自动重构细化与资源信息。
评估
通过一系列示例展示语言的表达力;摘要未报告大规模基准或定量性能评估。
原文摘要(Abstract)

Traditional session types prescribe bidirectional communication protocols for concurrent computations, where well-typed programs are guaranteed to adhere to the protocols. However, simple session types cannot capture properties beyond the basic type of the exchanged messages. In response, recent work has extended session types with refinements from linear arithmetic, capturing intrinsic attributes of processes and data. These refinements then play a central role in describing sequential and parallel complexity bounds on session-typed programs. The Rast language provides an open-source implementation of session-typed concurrent programs extended with arithmetic refinements as well as ergometric and temporal types to capture work and span of program execution. To further support generic programming, Rast also enhances arithmetically refined session types with recently developed nested parametric polymorphism. Type checking relies on Cooper's algorithm for quantifier elimination in Presburger arithmetic with a few significant optimizations, and a heuristic extension to nonlinear constraints. Rast furthermore includes a reconstruction engine so that most program constructs pertaining the layers of refinements and resources are inserted automatically. We provide a variety of examples to demonstrate the expressivity of the language.

链接与引用

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

BibTeX
@article{paperbot1746,
  title = {Rast: A Language for Resource-Aware Session Types},
  author = {Ankush Das and Frank Pfenning},
  journal = {Logical Methods in Computer Science},
  volume = {Volume 18, Issue 1},
  year = {2022},
  doi = {10.46298/lmcs-18(1:9)2022}
}