paperbot · PL 论文追踪

全部论文 待读 收藏

P2 Compiling Classical Sequent Calculus to Stock Hardware: The Duality of Compilation

将经典相继式演算编译到常规硬件:编译的对偶性
OOPSLA 9(OOPSLA1)2025匹配度 2/10 · 论文属于程序语言与编译理论,讨论经典相继式演算作为编译器中间表示并编译到常规硬件,与用户关注的静态分析、LLM/Agent、浮点程序分析和贝叶斯程序分析等核心方向没有直接关联。仅在“兼具形式化与工程实现”的偏好上有很弱交集,不足以构成方向匹配。引用 1 inbox
Philipp Schuster, Marius Müller, Klaus Ostermann, Jonathan Immanuel Brachthäuser
crossref: 2026-09-10

AI 速览

一句话:提出基于经典相继式演算的中间表示,并展示其可直接翻译到常规硬件,给出了形式描述、实现与初步性能评估。

编译器中间表示需要在便于翻译高层语言与便于生成代码之间取得平衡。基于逻辑系统的中间表示通常更易翻译,并具备对优化有价值的元理论性质。经典相继式演算因对称处理数据与控制流而被视为有潜力的候选,但此前尚不清楚如何将其编译到机器码。本文提出一种基于经典相继式演算的中间表示,给出其到常规硬件的直接翻译的形式描述,并实现原型编译器,体现了编译的对偶性。初步性能评估表明该方案可行。

问题
如何设计一种既便于从源语言翻译、又便于生成机器码的编译器中间表示,并让基于经典相继式演算的 IR 真正可编译到常规硬件。
方法
提出基于经典相继式演算的 IR,形式化描述其到常规硬件的直接翻译,并实现相应编译器。
评估
通过初步性能评估验证该编译方案可行。
原文摘要(Abstract)

Compiler intermediate representations have to strike a balance between being high-level enough to allow for easy translation of surface languages into them and being low-level enough to make code generation easy. An intermediate representation based on a logical system typically has the former property and additionally satisfies several meta-theoretical properties which are valuable when optimizing code. Recently, classical sequent calculus, which is widely recognized and impactful within the fields of logic and proof theory, has been proposed as a natural candidate in this regard, due to its symmetric treatment of data and control flow. For such a language to be useful, however, it must eventually be compiled to machine code. In this paper, we introduce an intermediate representation that is based on classical sequent calculus and demonstrate that this language can be directly translated to conventional hardware. We provide both a formal description and an implementation. Preliminary performance evaluations indicate that our approach is viable.

链接与引用

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

BibTeX
@article{paperbot3173,
  title = {Compiling Classical Sequent Calculus to Stock Hardware: The Duality of Compilation},
  author = {Philipp Schuster and Marius Müller and Klaus Ostermann and Jonathan Immanuel Brachthäuser},
  journal = {Proceedings of the ACM on Programming Languages},
  volume = {9},
  number = {OOPSLA1},
  year = {2025},
  doi = {10.1145/3720507}
}