個人資料
  • 博客訪問:
正文

為什麽要學 FP

(2022-11-06 08:35:37) 下一個

早期計算機理論有兩個理念,一個是圖靈的state machine, 另一個理論是圖靈的博士導師Alonzo Church的 stateless machine. 圖靈理論上的是imperative language, 而Alonzo Church理論上的是FP,如Lisp。 PF 的數學基礎是 lamda calculus, PF 因為沒有state, 所以沒有 side effects, 不容許mutation ,可以寫 inline function, anonymous function, 用 expression trees, 所以寫出來的code 非常簡潔漂亮,而且不會出錯。更大的好處是因為stateless, 所以不同functions 可以同時運行,特別是在 múltiples cores ,運行速度快。而state machine 的 concurrent control 是很麻煩易錯的。由於FP的諸多好處,不僅新的FP語言不斷湧現,而且幾乎所有流行語言,Java, Python, C#, C++,,,,等等都支持FP

FP有自己獨特的理論,獨特的數學。如果沒有學過FP, 很難幾天內就可以掌握一門新的FP。 懂Java的可以幾天寫C#,但熟練Fortran的,不可能幾天就玩轉Lisp

[ 打印 ]
閱讀 ()評論 (0)
評論
目前還沒有任何評論
登錄後才可評論.