2011年12月25日日曜日

Kleisli

Kleisliを忘れてました。

Kleisli

Kleisliはある入力をとり、出力をコンテナで包むものです。
Scalazの例でよく出てくる☆はこいつです。


Kleisliの合成には、>=>と<=<があります。


Function1W#kleisliは結果をコンテナで包むKleisliをつくります。


Kleislis#askはKleisliにおける恒等関数をつくります。


その他のメソッド


  • =<<
    • コンテナの要素をKleisliに適用
  • compose
    •  出力のコンテナを変える。
  • traverse
    • 要素をコンテナで包む。

KleisliはA => M[B]の形の関数で、合成ができて、☆という印象。
scalaz.httpの資料で、routingにKleisliを使っています。
"scalaz http kleisli"でググるとでてきます。

0 件のコメント:

コメントを投稿