【发布时间】:2018-01-24 20:23:58
【问题描述】:
这本质上与这个问题相反:Are there statically-typed functional languages?
该问题中提到的唯一动态类型函数语言是“Lisp 家族语言(Common Lisp、Scheme、Clojure)”。
还有其他动态类型的函数式语言吗?
【问题讨论】:
-
您提到的所有语言都不是纯粹的功能性语言。您可以使用大多数语言以功能方式进行编程,并且键入和范例并没有真正结合得那么紧密。你也有松散和严格的类型,其中 LISP 是严格的,而 JavaScript、Perl 和 PHP 是松散的,因为如果你尝试添加一个数字和一个字符串,LISP 将需要显式转换,而在松散的语言中会发生魔法,你可能不喜欢答案.
-
函数式编程不依赖于特定的类型系统。严格类型系统只是保证在运行时不会发生某种类型的错误。要以函数方式使用,语言只需要一等/高阶函数。
-
Groovy 是候选人。 Smalltalk,恕我直言,也是候选人。
标签: types functional-programming programming-languages dynamic-typing