Module
Data.Functor.Pairing
- Package
- purescript-open-pairing
- Repository
- purescript-open-community/purescript-open-pairing
Pairings between functors.
Based on http://hackage.haskell.org/package/adjunctions-0.6.0/docs/Data-Functor-Zap.html.
#Pairing Source
type Pairing :: (Type -> Type) -> (Type -> Type) -> Type
type Pairing f g = forall a b c. (a -> b -> c) -> f a -> g b -> c
A pairing between functors f
and g
.
This asserts that any sums in f
can annihilate any products in g
, and vice
versa.
This library provides some useful pairings, and ways of lifting pairings over
various constructions on Functor
s.
#stateStore Source
stateStore :: forall f g s. f ⋈ g -> (StateT s f) ⋈ (StoreT s g)
StateT
pairs with StoreT
.