Portability  MPTCs, fundeps 

Stability  provisional 
Maintainer  Edward Kmett <ekmett@gmail.com> 
Uses a contravariant adjunction:
f  g : Hask^op > Hask
to build a Comonad
to Monad
transformer. Sadly, the dual construction,
which builds a Comonad
out of a Monad
, is uninhabited, because any
Adjunction
of the form
f  g : Hask > Hask^op
would trivially admit unsafePerformIO.
Documentation
runAdjoint :: Contravariant g => Adjoint f g a > g (f a)Source
adjoint :: Contravariant g => g (f a) > Adjoint f g aSource
newtype AdjointT f g w a Source
AdjointT  

(Adjunction f g, Comonad w) => Monad (AdjointT f g w)  
(Adjunction f g, Functor w) => Functor (AdjointT f g w)  
(Adjunction f g, Comonad w) => Applicative (AdjointT f g w) 