Safe Haskell | None |
---|---|
Language | Haskell2010 |
Coexponential profunctor
newtype Coexp s t b a Source #
Coexponentials are the dual of functions, consisting of an argument of type a
(derived within an environment of type s
) and a continuation from the return type b
(extending to the eventual result type t
). As such, they naturally have the shape of optics, relating the outer context s -> t
to the inner a -> b
.
Instances
IsIso (Coexp s t) Source # | |
Defined in Fresnel.Iso.Internal | |
Profunctor (Coexp s t) Source # | |
Defined in Fresnel.Profunctor.Coexp dimap :: (a -> b) -> (c -> d) -> Coexp s t b c -> Coexp s t a d # lmap :: (a -> b) -> Coexp s t b c -> Coexp s t a c # rmap :: (b -> c) -> Coexp s t a b -> Coexp s t a c # (#.) :: forall a b c q. Coercible c b => q b c -> Coexp s t a b -> Coexp s t a c # (.#) :: forall a b c q. Coercible b a => Coexp s t b c -> q a b -> Coexp s t a c # | |
Monoid t => Applicative (Coexp s t b) Source # | |
Defined in Fresnel.Profunctor.Coexp | |
Functor (Coexp s t b) Source # | |
Monoid (Coexp a b b a) Source # | |
Semigroup (Coexp a b b a) Source # | |