Higher-Order Function
高階関数(Higher-Order Function)は関数を引数に取るか関数を返す関数であり、関数型プログラミングの中核抽象であって、map/filter/reduce などを可能にする。
目的
関数合成によって複雑なロジックを表現し、抽象化と再利用の水準を高める。
メカニズム
map(f, list):各要素に f を適用する。filter(pred, list):pred を満たす要素を残す。reduce(f, init, list):累積して統合する。curry(f):多引数関数を単引数関数の連鎖に変える。
ユースケース
- 関数型プログラミング
- コレクション操作
- 関数の合成(コンポジション)