スカラスで
Kleisli[F, A, B]のラッパーですA => F[B]。ReaderT[F, A, B]-- リーダー モナド トランスフォーマー -- は単に のエイリアスですKleisli[F, A, B]。Reader[A, B]monad はReaderTwith identity monadId:の特殊化です
type Reader[A, B] = ReaderT[Id, A, B]。
それは単なる偶然なのか、それとも Scalazで 、、が同形であるより深い理由があるのでしょうか?KleisliReaderTReader