函式式程式設計筆記

2021-08-15 08:57:26 字數 803 閱讀 2943

在數學的發展史上,針對category theory出現了一整套函式的運算方法,這個方法被用於程式設計就是現在的函式式程式設計。所以函式式程式設計的本質是數學的運算方法。

我們都知道,數學的原始目的是求值。我理解的數學就是:給你一些條件,然後我需要乙個結果,過程是怎樣我是不管的。所以函式式程式設計的目的就是求值

ps:好好理解求值這個目的,理解了這個,函式式程式設計就很好理解了。

剛看到函式式程式設計的等級竟然是跟物件導向和面向過程是屬於同乙個等級的時候,很是訝異,沒想到函式式程式設計是這麼高階的東西。

如果乙個結果需要經過多個函式計算才能得到,那麼將這多個函式合併成乙個函式就是函式的合成。

y = f(x);

z = g(y);

// 那麼,這裡的g(f(x))就是函式f和函式g的合成

z = g(f(x))

柯里化就是將乙個有多個引數的函式分解成多個單參函式的過程。

k = add(x, y) 

// 那麼,將這兩個引數的函式分解一下,分成需要兩次傳參的

// 注意,這裡的function只是代表著它是乙個函式,並不是指函式名,你可以將之理解為匿名函式

k = function

(x)

}// 所以

add (x, y) = function

(x)(y)

函式式程式設計筆記 09

scalelist def scalalist xs list double factor double list double xs match 複製 抽象成map abstract class list t defscalelist xs list double factor double xs...

RxSwift筆記 函式響應式程式設計

常見程式設計模式 函式式程式設計的乙個特點就是,允許把函式本身作為引數傳入另乙個函式,還允許返回乙個函式。我們可以通過組合不同的函式來得到想要的結果 函式式程式設計是用遞迴做為控制流程的機制 函式程式設計典型例項是高階函式 詳情請參考 阮一峰的日誌 函式式程式設計初探 函式式程式設計特點 維基百科 ...

Scala學習筆記 函式式程式設計

在函式式程式設計中,函式式第一等級的值,就像資料變數的值一樣,你可以從函式中組合形成新函式 如 tan x sin x cos x 可以將函式賦值給變數,也可以將函式作為引數傳遞給其它函式,還可以將函式作為其它函式的返回值。當乙個函式採用其它函式作為變數或返回值時,它被稱為高階函式。deffacto...