paperbot · PL 论文追踪

全部论文 待读 收藏

P2 Manifest sharing with session types

会话类型中的 Manifest 共享
ICFP 1(ICFP)2017匹配度 2/10 · 该论文属于编程语言理论中的会话类型与线性逻辑,研究共享机制与死锁,与用户关注的静态分析、LLM/Agent 交叉、浮点程序分析、贝叶斯程序分析等方向无直接关联。引用 83 inbox
Stephanie Balzer, Frank Pfenning
dblp: 2026-09-10crossref: 2026-09-10

AI 速览

一句话:将共享机制引入会话类型语言,通过线性/共享分层与模态算子,在保持会话保真性的同时允许共享进程竞争导致的死锁。

基于线性逻辑与会话类型通信的 Curry-Howard 对应,会话类型语言可保证会话保真性与无死锁,但这些强保证排除了许多共享资源的自然编程模式。本文在会话类型语言中引入共享:类型被分层为线性层与共享层,并通过模态算子连接两层。所得语言保持会话保真性,但不再保证无死锁,因为对共享进程的竞争可能引发死锁。作者用哲学家就餐等例子说明该语言,并给出无类型异步 π 演算到该语言的翻译。

问题
如何在保留会话类型核心保证的同时支持共享资源,使语言能表达传统上被会话类型排除的共享编程模式。
方法
将类型分层为线性层和共享层,用模态算子连接,并扩展会话类型系统以引入共享进程。
评估
通过哲学家就餐等示例展示表达力,并将无类型异步 π 演算翻译到该语言以说明其通用性;结果表明会话保真性保持,但无死锁性因共享进程竞争而丧失。
原文摘要(Abstract)

Session-typed languages building on the Curry-Howard isomorphism between linear logic and session-typed communication guarantee session fidelity and deadlock freedom. Unfortunately, these strong guarantees exclude many naturally occurring programming patterns pertaining to shared resources. In this paper, we introduce sharing into a session-typed language where types are stratified into linear and shared layers with modal operators connecting the layers. The resulting language retains session fidelity but not the absence of deadlocks, which can arise from contention for shared processes. We illustrate our language on various examples, such as the dining philosophers problem, and provide a translation of the untyped asynchronous π-calculus into our language.

链接与引用

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

BibTeX
@article{BalzerP17,
  title = {Manifest sharing with session types},
  author = {Stephanie Balzer and Frank Pfenning},
  journal = {Proceedings of the ACM on Programming Languages},
  volume = {1},
  number = {ICFP},
  year = {2017},
  doi = {10.1145/3110281}
}