Scala 使用基于 System F ω 的类型系统,通常被认为是强规范化的。强归一化意味着非图灵完备性。
尽管如此,Scala 的类型系统是图灵完备的。
与正式的算法和系统相比,哪些更改/添加/修改使 Scala 的类型系统图灵完备?
Scala 使用基于 System F ω 的类型系统,通常被认为是强规范化的。强归一化意味着非图灵完备性。
尽管如此,Scala 的类型系统是图灵完备的。
与正式的算法和系统相比,哪些更改/添加/修改使 Scala 的类型系统图灵完备?
这不是一个全面的答案,但原因是您可以定义递归类型。
我之前问过类似的问题(关于非图灵完备语言的外观)。答案是这样的:图灵完备的语言必须支持任意循环或递归。Scala 的类型系统支持后者