MonadLayer[M, Inner] has the following functionality:
- lifts values from the MonadInner to the MonadM.
- lifts Monad isomorphisms in Inner ((Inner ~> Inner, Inner ~> Inner))
into Monad homomorphisms in M (M ~> M).
This allows you to "map" a natural transformation over the Inner inside M,
but only if you can provide an inverse of that natural transformation.
MonadLayer[M, Inner]
has the following functionality: - lifts values from theMonad
Inner
to theMonad
M
. - liftsMonad
isomorphisms inInner
((Inner ~> Inner, Inner ~> Inner)
) intoMonad
homomorphisms inM
(M ~> M
). This allows you to "map" a natural transformation over theInner
insideM
, but only if you can provide an inverse of that natural transformation.MonadLayer
has one external law: