Scala使用基于SystemFω的类型系统,通常认为它是强正规化的。强烈正常化意味着非图灵完整性。
然而,Scala的类型系统是Turing-complete。
与正式算法和系统相比,哪些更改/添加/修改使Scala的类型系统图灵完整?
答案 0 :(得分:4)
这不是一个全面的答案,但原因是您可以定义递归类型。
之前我曾问过类似的问题(about what a non-Turing complete language might look like)。答案的形式如下:图灵完整语言必须支持任意循环或递归。 Scala的类型系统支持后者