JavaScript
関数型プログラミング

JavaScript: Tips: パイプライン関数にswapメソッドを付けとくと ちょっとうれしい

今、現時点で |>? が普通には使えないんでこんなこと書いてます。

const pipe = x => (...fs) => 

fs.reduce( (acc, f)=>f(acc), x )
pipe.swap =(...fs)=>x=>pipe(x)(...fs)

としておくと、


  • 単体で使うときは pipe(値)(関数1, 関数2, ...) のように |>と同じ並びで使えてうれしい。

  • map等で使うときは、 map( e=>pipe(e)(関数1, 関数2, ...) )と書くべきところを、 map( pipe.swap(関数1, 関数2, ...) ) と、ちょっとだけすっきりと書けてうれしい。

ということなんですが、うれしいのは僕だけ? 需要あります?

「関数にメソッドつけるなんて邪道」「あんまりうれしくない」「最初から引数を逆にしとけばいいじゃん!」という突っ込みや「swap関数を定義すれば?」というような各方面からのコメント、お待ちしております。