【发布时间】:2011-01-15 20:26:59
【问题描述】:
哪些编程语言是函数式的和纯的?
【问题讨论】:
-
这个问题的答案可能会有所帮助:stackoverflow.com/questions/4382223/…
标签: programming-languages functional-programming
哪些编程语言是函数式的和纯的?
【问题讨论】:
标签: programming-languages functional-programming
一个不错的函数式编程语言是 Agda: http://www.cse.chalmers.se/~ulfn/papers/afp08/tutorial.pdf
由于依赖类型,可以定义一些在其他语言(如 haskell)中无法定义的函数。例如。函数的类型 (Vec n -> Vec n),返回与其参数长度相同的向量,例如 sort 就是这种类型。 [WAS“我相信有些论文认为它比 haskell 更纯粹。”编辑前。]
agda 的优点是源代码非常好,类似于haskell。此外,可以调用和使用任何 haskell 函数。缺点主要是目前标准库变化太频繁。
只需查看列表的源代码: http://www.cse.chalmers.se/~nad/listings/lib-0.4/Data.List.html#209
当然也有类似的函数式编程语言,比如 coq、epigram 等。
并在维基百科中提到库里-霍华德:
http://en.wikipedia.org/wiki/Curry%E2%80%93Howard_correspondence
一些关于依赖类型的链接(包括一些 Agda 链接): http://www.reddit.com/r/dependent_types/
【讨论】:
Lambda 演算和 SK 演算也是两种非常重要的纯函数式编程语言。
【讨论】: