コンテンツへスキップ
uencoder

Currying

カリー化は複数引数の関数を単一引数の関数の連なりへと変換する(f(a,b,c) → f(a)(b)(c))。部分適用や関数の合成を可能にする。

目的

引数を再利用し、関数を合成することで部分適用済みの関数を作り、柔軟性を高める。

メカニズム

f(a,b,c) は a → (b → (c → 結果)) の形になる。部分適用では一部の引数を固定すると新しい関数が得られる。Lodash の curry や Ramda は自動カリー化を行う。関数の合成と組み合わせてパイプラインを構築できる。

ユースケース

  • 関数型プログラミング
  • 引数リユース
  • 関数のコンポジション

関連用語

References