功能和纯编程语言

时间:2011-01-15 20:27:00

标签: programming-languages functional-programming

哪些编程语言功能齐全且纯粹?

3 个答案:

答案 0 :(得分:4)

可能有很多,但大多数人都知道和使用的主要是Haskell

其他一些人是MirandaClean

答案 1 :(得分:2)

一个很好的函数式编程语言是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/

答案 2 :(得分:1)

Lambda演算和SK演算也是两种非常重要的编程语言,纯粹是功能性的。