úÎ*÷(™     GADTs provisionalEdward Kmett <ekmett@gmail.com> Safe-Inferred Coend of  from  Hask -> Hask MPTCs provisionalEdward Kmett <ekmett@gmail.com>NoneThe cograph of a profunctor  Type-Families provisionalEdward Kmett <ekmett@gmail.com>NoneA  p& is corepresentable if there exists a  f such that  p d c is isomorphic to f d -> c. A  p$ is representable if there exists a  f such that  p d c is isomorphic to d -> f c.   and  $ form two halves of an isomorphism. /This can be used with the combinators from the lens package.  ::   p => Iso' (d ->   p c) (p d c) and  $ form two halves of an isomorphism. /This can be used with the combinators from the lens package.  ::  f p => Iso' (f d -> c) (p d c)  !"#        !"#GADTs provisionalEdward Kmett <ekmett@gmail.com> Trustworthy p q is the  composition of the profunctors p and q. <For a good explanation of profunctor composition in Haskell  see Dan Piponi' s article:  :http://blog.sigfpe.com/2011/07/profunctors-in-haskell.html (->)9 functions as a lax identity for profunctor composition. This provides an Iso for the lens package that witnesses the  isomorphism between  (->) q d c and q d c, which  is the left identity law.    ::  q => Iso' ( (->) q d c) (q d c) (->)9 functions as a lax identity for profunctor composition. This provides an Iso for the lens package that witnesses the  isomorphism between  q (->) d c and q d c, which  is the right identity law.    ::  q => Iso' ( q (->) d c) (q d c) DProfunctor composition generalizes functor composition in two ways. $This is the first, which shows that exists b. (a -> f b, b -> g c) is isomorphic to  a -> f (g c).  ::  f => Iso' ( ($ f) ($ g) d c) ($ (% f g) d c)DProfunctor composition generalizes functor composition in two ways. %This is the second, which shows that exists b. (f a -> b, g b -> c) is isomorphic to  g (f a) -> c.  ::  f => Iso' ( (& f) (& g) d c) (& (% g f) d c)This is a variant on  that uses ' instead of $.  :: ( f => Iso' ( (' f) (' g) d c) (' (% f g) d c)This is a variant on  that uses ) instead of &.  ::  f => Iso' ( () f) () g) d c) () (% g f) d c)*oThe composition of two representable profunctors is representable by the composition of their representations. +*,- +*,-.      !"#$%&'()*+ ,-./ 0"12"#3456789:;profunctor-extras-3.2Data.Profunctor.TraceData.Profunctor.CollageData.Profunctor.RepData.Profunctor.CompositionData.Profunctor ProfunctorTraceCollageCRLCorepresentableCorep cotabulatecorep RepresentableReptabulaterep tabulated cotabulated Procomposeidlidrupstars downstarskleislis cokleislis $fObCollageR $fObCollageL$fSemigroupoidCollageprofunctors-3.1.2Data.Profunctor.UnsafebaseGHC.BaseFunctor$fCorepresentableDownStar$fCorepresentableTagged$fCorepresentableCokleisli$fCorepresentable(->)$fRepresentableUpStar$fRepresentableKleisli$fRepresentable(->)UpStartransformers-0.3.0.0Data.Functor.ComposeComposeDownStar Control.ArrowKleisliMonadcomonad-3.0.0.2Control.Comonad Cokleisli$fRepresentableProcompose$fCorepresentableProcompose$fFunctorProcompose$fProfunctorProcompose