應用式函子

在函數式編程中 ， 應用式函子 ， 或簡稱應用式 （ applicative ） ， 是在函子和單子之間的中間結構 。 應用式函子允許函子式計算成爲序列 （ 不同於平常函子 ） ， 但是不允許使用前面計算的結果於後續計算的定義之中 （ 不同於單子 ） 。 應用式函子是範疇論中具有的的編程等價者 。 應用式函子是2008年Conor McBride和Ross Paterson在他們的論文 《 Applicative programming with effects 》 中介入的 。 應用式函子在Haskell中最初作爲庫特徵出現 ， 現在已經傳播到了其他語言 ， 包括Idris 、 Agda 、 OCaml 、 Scala和F # 。 爲了方便使用應用式函子編程 ， Glasgow Haskell和Idris二者現在提供了專門設計的語言特徵 。 在Haskell中 ， 應用式函子實現在Applicative類型類中 。