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

函数式编程

维基百科,自由的百科全书
(重定向自函數程式語言
跳到导航 跳到搜索

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

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

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

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

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

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

歷史[编辑]

函數式編程中最古老的例子莫過於1958年被創造出來的Lisp了。函數式編程更加現代一些的例子包括CleanClojureErlangHaskellMirandaScheme等。

雖然λ演算並非設計來於計算機上執行,但它可以被視作第一個函數式編程語言。1980年代末期,集函數式編程研究成果於大成的Haskell發佈。

基于JavaScript的某些开发理念强调函数式的实现方法。

速度和空間上的顧慮[编辑]

函數式編程常被認為嚴重耗費CPU和記憶體資源[來源請求]。主因有二:

  • 在實現早期的函數式編程語言時並沒有考慮過效率問題。
  • 面向函数式编程特性(如保证函数参数不变性等)的独特数据结构和算法。

参考文献[编辑]

外部連結[编辑]