paperbot · PL 论文追踪

全部论文 待读 收藏

P2 Kind inference for datatypes

数据类型声明的 kind 推断
POPL 4(POPL)2019匹配度 2/10 · 论文属于类型系统/kind inference 的 PL 理论工作,关注 Haskell 数据类型声明的形式化与算法化,不涉及用户核心方向(LLM/Agent 与静态分析结合、浮点程序分析、贝叶斯程序分析等)。虽然包含形式化证明,但与画像匹配有限。引用 2 inbox
Ningning Xie, Richard A. Eisenberg, Bruno C. d. S. Oliveira
crossref: 2026-09-10

AI 速览

一句话:系统研究数据类型声明的 kind 推断,为 Haskell98 与 PolyKinds 给出声明式及算法化规范并证明其性质。

随着 Haskell 等语言不断引入显著增强类型系统表达力的新特性,数据类型声明中的 kind 推断已成为独立且重要的研究问题。本文研究数据类型的 kind 推断,受类型推断研究启发,分别为 Haskell98 和基于现代 Haskell 扩展(含有限形式依赖类型)的 PolyKinds 系统给出声明式规范,界定哪些数据类型声明应被接受。作者认为这些形式化表述即使对 Haskell98 也是新颖且此前未有的。文章进一步给出可实现算法化版本,并研究这些系统的可靠性、完备性以及主 kind 的存在性,在性质成立处给出证明。该工作可为希望形式化数据类型声明的语言设计者,以及寻求有原则地主 kind 推断的实现者提供指南。

问题
现代 Haskell 等语言的新特性使数据类型声明的 kind 推断变得重要而困难;需要明确哪些声明应被接受,并给出有原则的推断方法。
方法
借鉴类型推断研究,为 Haskell98 与 PolyKinds 分别建立声明式规范,并给出对应的可实现算法化版本,进而分析其元理论性质。
评估
评估方式是对所提规范与算法版本进行元理论分析,证明其可靠性、完备性及主 kind 存在性(在性质成立处)。
原文摘要(Abstract)

In recent years, languages like Haskell have seen a dramatic surge of new features that significantly extends the expressive power of their type systems. With these features, the challenge of kind inference for datatype declarations has presented itself and become a worthy research problem on its own. This paper studies kind inference for datatypes. Inspired by previous research on type-inference, we offer declarative specifications for what datatype declarations should be accepted, both for Haskell98 and for a more advanced system we call PolyKinds, based on the extensions in modern Haskell, including a limited form of dependent types. We believe these formulations to be novel and without precedent, even for Haskell98. These specifications are complemented with implementable algorithmic versions. We study soundness, completeness and the existence of principal kinds in these systems, proving the properties where they hold. This work can serve as a guide both to language designers who wish to formalize their datatype declarations and also to implementors keen to have principled inference of principal types.

链接与引用

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

BibTeX
@article{paperbot571,
  title = {Kind inference for datatypes},
  author = {Ningning Xie and Richard A. Eisenberg and Bruno C. d. S. Oliveira},
  journal = {Proceedings of the ACM on Programming Languages},
  volume = {4},
  number = {POPL},
  year = {2019},
  doi = {10.1145/3371121}
}