関数合成
Haskell
の場合
code:haskell
(.) :: (b -> c) -> (a -> b) -> a -> c
f . g = \x -> f (g x)
入力xに対してgを適用してその結果にfを適用する
データがどのように処理されるかが分かりやすい
複数の処理を順番に適用したい場合は
カリー化
するより見やすく直感的にかける
しかし処理の順番には注意が必要
TypeScriptだと
remeda
とかの
pipe
などがある