1. 程式人生 > >函數式語言(functional language)

函數式語言(functional language)

func 依賴 scheme 自然語言 開發 並行 oca isp 大量

函數式語言(functional language)一類程序設計語言,是一種非馮·諾伊曼式的程序設計語言。函數式語言主要成分是原始函數、定義函數和函數型。這種語言具有較強的組織數據結構的能力,可以把某一數據結構(如數組)作為單一值處理;可以把函數作為參數,其結果也可為函數,這種定義的函數稱為高階函數,程序就是函數,程序作用在結構型數據上,產生結構型結果,從根本上改變了馮·諾伊曼式語言的“逐詞”工作方式。

函數式語言有:OCaml、 Lisp、scheme、Haskell、Clean、Erlang、Clojure、Miranda等等。

函數式語言流行起來的原因:

  函數式語言具有並行、單元測試、沒有額外作用、不修改狀態、引用透明、代碼部署熱等特點。

  由於代碼簡單,加快了開發的速度;由於函數式語言的並行特點,程序員會大量使用函數,從那個人減少了重復的代碼,因而程序比較短。其次,函數式編程語言更加接近於我們使用的自然語言,程序員在學習和使用它的時候更加快捷容易,函數式語言的自由度很高,十分接近自然語言寫出的代碼。另外,函數式語言的代碼管理更加方便,函數式編程不會對外部產生依賴,也不會修改外界對的狀態。程序員只需要把指定的參數給函數,相同的參數返回的結果必然是相同的。最後,函數式語言的代碼支持代碼熱升級。

函數式語言(functional language)