【发布时间】:2012-10-17 05:31:57
【问题描述】:
我知道像 Haskell 这样的语言是静态类型的并且具有类型推断。但是是否存在具有全局类型推断的非函数式语言,相当于具有类型推断和结构类型的 C 语言。
【问题讨论】:
标签: type-inference static-typing imperative-programming structural-typing
我知道像 Haskell 这样的语言是静态类型的并且具有类型推断。但是是否存在具有全局类型推断的非函数式语言,相当于具有类型推断和结构类型的 C 语言。
【问题讨论】:
标签: type-inference static-typing imperative-programming structural-typing
OCaml 是我所知道的唯一一种可以是命令式/面向对象的,它是静态类型的、垃圾收集的并支持全局类型推断和结构类型,尽管它本质上是一种函数式语言。
Scala 不是像 OCaml 那样的函数式语言,而是一种支持结构类型的命令式/面向对象的语言,但没有 type inference you're looking for 那种。不过,它仍然支持函数式构造。
如果您所说的“非函数式”是指一种根本不支持函数式编程的语言,那么我认为不存在这种语言。
【讨论】:
OCaml 不再是唯一的竞争者。近年来出现了许多结构类型的命令式语言:
【讨论】:
还有Crystal,但处于pre-alpha阶段:
【讨论】: