在斯卡拉兹
Kleisli[F, A, B]
是A => F[B]
.ReaderT[F, A, B]
-- reader monad transformer -- 只是Kleisli[F, A, B]
.Reader[A, B]
monad 是ReaderT
with identity monad的一个特化Id
:
type Reader[A, B] = ReaderT[Id, A, B]
.
这只是巧合还是有一些更深层次的原因在 ScalazKleisli
中是ReaderT
同Reader
构的?