コンテンツへスキップ
uencoder

Functional Programming

関数型プログラミング(Functional Programming)は、純粋関数・不変データ・宣言型スタイルを中心とし、副作用と共有状態を避けるプログラミングパラダイムである。

目的

関数合成と不変データによって、信頼性が高くテストしやすいコードを構築する。

メカニズム

純粋関数(副作用なし)、不変性、高階関数、遅延評価、関数合成、カリー化。Haskell は純粋関数型、Scala/JS はマルチパラダイムである。長所はテスト容易性・並列化・推論のしやすさ、短所は学習曲線と性能である。

ユースケース

  • コード設計
  • コンカレンシーの安全性
  • テスト容易性

関連用語

References