Skip to content

类型判断

Typing judgment

在上下文中断言项具有某类型的形式判断。

形式陈述

类型判断通常写作

Γt:T,

表示在类型上下文 Γ 中,项 t 具有类型 T。它由语法导出规则归纳定义;判断成立当且仅当存在以该判断为结论的有限推导树。上下文记录自由变量的类型假设。

直觉

类型判断不是运行时测试结果,而是形式系统中的可导出断言。规则同时描述语言构造如何使用以及哪些程序在执行前被拒绝。

例子与边界

在简单类型 λ 演算中,由 Γ,x:St:T 可推出 Γλx.t:ST;由 Γf:STΓs:S 推出 Γfs:T。不同类型系统可对同一语法给出不同判断。

推论与应用

进展与保持定理量化可导出的类型判断,类型推断则尝试构造此类推导。判断形式也推广到效应、子类型和程序逻辑。

参考资料
  • Benjamin C. Pierce, Types and Programming Languages, MIT Press, 2002, Statics chapters。
  • Andrew K. Wright and Matthias Felleisen, “A Syntactic Approach to Type Soundness,” Information and Computation 115(1), 1994, Chapters 8–11。