HORIZON HASKELLDocslts/ghc-9.10.x248f8f02026-10-05Search names, modules, packages, or :: a typeCtrl K

GHC 9.10.3 · lts/ghc-9.10.x · 248f8f0 · 2026-10-05

Moduleprofunctors-5.6.3Haskell2010

Data.Profunctor.Strong

  • 4 types
  • 2 classes
  • 8 values
  • Packageprofunctors-5.6.3
  • Exports14
  • LanguageHaskell2010
  • LicenceBSD-3-Clause
  • SourceStrong.hs

Strength

9 declarations
classclass Profunctor p => Strong (p :: Type -> Type -> Type) where
#

Generalizing Star of a strong Functor

Note: Every Functor in Haskell is strong with respect to (,).

This describes profunctor strength with respect to the product structure of Hask.

http://www.riec.tohoku.ac.jp/~asada/papers/arrStrMnd.pdf

Methods

Instances20Strong, …
newtypenewtype Tambara (p :: Type -> Type -> Type) a b
#

Tambara cofreely makes any Profunctor Strong.

Constructors

Instances18ProfunctorComonad, ProfunctorAdjunction, ProfunctorFunctor, Category, Arrow, ArrowApply, …
datadata Pastro (p :: Type -> Type -> Type) a b where
#

Pastro -| Tambara

Pastro p ~ exists z. Costar ((,)z) Procompose p Procompose Star ((,)z)

Pastro freely makes any Profunctor Strong.

Constructors

  • Pastro :: ((y, z) -> b) -> p x y -> (a -> (x, z)) -> Pastro p a b
Instances6ProfunctorMonad, ProfunctorAdjunction, ProfunctorFunctor, Strong, Profunctor, Functor

Costrength

5 declarations
classclass Profunctor p => Costrong (p :: Type -> Type -> Type) where
#

Analogous to ArrowLoop, loop = unfirst

Methods

Instances15Costrong, …
datadata Cotambara (q :: Type -> Type -> Type) a b where
#

Cotambara cofreely constructs costrength

Constructors

Instances6ProfunctorComonad, ProfunctorAdjunction, ProfunctorFunctor, Costrong, Profunctor, Functor
newtypenewtype Copastro (p :: Type -> Type -> Type) a b
#

Copastro -| Cotambara

Copastro freely constructs costrength

Constructors

Instances6ProfunctorMonad, ProfunctorAdjunction, ProfunctorFunctor, Costrong, Profunctor, Functor