本页使用了标题或全文手工转换

函数编程语言

维基百科,自由的百科全书
跳转至: 导航搜索

函数式编程英语:functional programming)或称函数程序设计,又称泛函编程,是一种编程典范,它将电脑运算视为数学上的函数计算,并且避免使用程序状态以及易变对象。函数编程语言最重要的基础是λ演算(lambda calculus)。而且λ演算的函数可以接受函数当作输入(引数)和输出(传出值)。

比起命令式编程,函数式编程更加强调程序执行的结果而非执行的过程,倡导利用若干简单的执行单元让计算结果不断渐进,逐层推导复杂的运算,而不是设计一个复杂的执行过程。

典型的函数式编程语言[编辑]

纯函数式编程语言[编辑]

非纯函数式编程语言[编辑]

其他函数式编程语言[编辑]

历史[编辑]

函数式编程中最古老的例子莫过于1958年被创造出来的LISP了。用LISP编程可以达到精简人力的目的。函数式编程更加现代一些的例子包括schemeHaskellCleanErlangMiranda等。虽然λ演算并非设计来于计算机上运行,但它可以被视作第一个函数式编程语言。1980年代末期,集函数式编程研究成果于大成的Haskell发布。

速度和空间上的顾虑[编辑]

函数式编程常被认为严重耗费CPU和内存资源[来源请求]。主因有二:

  • 在实现早期的函数式编程语言时并没有考虑过效率问题。
  • 有些非函数式编程语言为求提升速度,不提供自动边界检查或自动垃圾回收等功能。

惰性求值亦为Haskell一类的语言增加了额外的管理负担。

参考文献[编辑]

外部链接[编辑]