proarrow-0: Category theory with a central role for profunctors
Safe HaskellNone
LanguageHaskell2010

Proarrow.Monoid

Documentation

class (Monoidal k, Ob m) => Monoid (m :: k) where Source Comments #

Methods

mempty :: (Unit :: k) ~> m Source Comments #

mappend :: (m ** m) ~> m Source Comments #

Instances

Instances details
Monoid 'TRU Source Comments # 
Instance details

Defined in Proarrow.Category.Instance.Bool

Monoid m => Monoid (m :: Type) Source Comments # 
Instance details

Defined in Proarrow.Monoid

Methods

mempty :: (Unit :: Type) ~> m Source Comments #

mappend :: (m ** m) ~> m Source Comments #

Monoid ('CNSTRNT ()) Source Comments # 
Instance details

Defined in Proarrow.Category.Instance.Constraint

Monoid ('S 'Z) Source Comments # 
Instance details

Defined in Proarrow.Category.Instance.Simplex

Methods

mempty :: (Unit :: Nat) ~> 'S 'Z Source Comments #

mappend :: ('S 'Z ** 'S 'Z) ~> 'S 'Z Source Comments #

(Cartesian k, Representable (FreeMonoid ((~>) :: CAT k)), Ob b, (FreeMonoid ((~>) :: CAT k) % b) ~ FreeMonoidF b, Ob (FreeMonoid ((~>) :: CAT k) % b)) => Monoid (FreeMonoidF b :: k) Source Comments # 
Instance details

Defined in Proarrow.Profunctor.Free

(Comonoid c, Monoid m, MonoidalProfunctor p) => Monoid (Wrapped p c m :: Type) Source Comments # 
Instance details

Defined in Proarrow.Profunctor.Wrapped

Methods

mempty :: (Unit :: Type) ~> Wrapped p c m Source Comments #

mappend :: (Wrapped p c m ** Wrapped p c m) ~> Wrapped p c m Source Comments #

Comonoid c => Monoid ('OP c :: OPPOSITE k) Source Comments # 
Instance details

Defined in Proarrow.Category.Opposite

Methods

mempty :: (Unit :: OPPOSITE k) ~> 'OP c Source Comments #

mappend :: ('OP c ** 'OP c) ~> 'OP c Source Comments #

(HasCoproducts k, Ob a) => Monoid ('COPR a :: COPROD k) Source Comments # 
Instance details

Defined in Proarrow.Monoid

Profunctor p => Monoid ('PR (FreeMonoid p) :: PROD (k -> k -> Type)) Source Comments # 
Instance details

Defined in Proarrow.Profunctor.Free

(Profunctor p, MonoidalProfunctor p) => Monoid (p :: PRO k j) Source Comments # 
Instance details

Defined in Proarrow.Profunctor.Day

Methods

mempty :: (Unit :: PRO k j) ~> p Source Comments #

mappend :: (p ** p) ~> p Source Comments #

MonoidalProfunctor p => Monoid (Wrapped p :: k2 -> k1 -> Type) Source Comments # 
Instance details

Defined in Proarrow.Profunctor.Wrapped

(Bicategory kk, Ob (I :: kk a a), Monad m, Ob m) => Monoid ('E m :: ENDO kk a) Source Comments #

Monads are monoids in the category of endo-1-cells.

Instance details

Defined in Proarrow.Category.Monoidal.Endo

Methods

mempty :: (Unit :: ENDO kk a) ~> 'E m Source Comments #

mappend :: ('E m ** 'E m) ~> 'E m Source Comments #

newtype GenElt (x :: k) (m :: k) Source Comments #

Constructors

GenElt (x ~> m) 

Instances

Instances details
(Monoid m, Cartesian k, Ob x) => Monoid (GenElt x m) Source Comments # 
Instance details

Defined in Proarrow.Monoid

Methods

mempty :: GenElt x m Comments #

mappend :: GenElt x m -> GenElt x m -> GenElt x m Comments #

mconcat :: [GenElt x m] -> GenElt x m Comments #

(Monoid m, Cartesian k) => Semigroup (GenElt x m) Source Comments # 
Instance details

Defined in Proarrow.Monoid

Methods

(<>) :: GenElt x m -> GenElt x m -> GenElt x m Comments #

sconcat :: NonEmpty (GenElt x m) -> GenElt x m Comments #

stimes :: Integral b => b -> GenElt x m -> GenElt x m Comments #

class (Monoidal k, Ob c) => Comonoid (c :: k) where Source Comments #

Methods

counit :: c ~> (Unit :: k) Source Comments #

comult :: c ~> (c ** c) Source Comments #

Instances

Instances details
Comonoid 'FLS Source Comments # 
Instance details

Defined in Proarrow.Category.Instance.Bool

Comonoid 'TRU Source Comments # 
Instance details

Defined in Proarrow.Category.Instance.Bool

Comonoid ('CNSTRNT a :: CONSTRAINT) Source Comments # 
Instance details

Defined in Proarrow.Category.Instance.Constraint

Comonoid ('L (Ur a) :: LINEAR) Source Comments # 
Instance details

Defined in Proarrow.Category.Instance.Linear

Methods

counit :: 'L (Ur a) ~> (Unit :: LINEAR) Source Comments #

comult :: 'L (Ur a) ~> ('L (Ur a) ** 'L (Ur a)) Source Comments #

Monoid c => Comonoid ('OP c :: OPPOSITE k) Source Comments # 
Instance details

Defined in Proarrow.Category.Opposite

Methods

counit :: 'OP c ~> (Unit :: OPPOSITE k) Source Comments #

comult :: 'OP c ~> ('OP c ** 'OP c) Source Comments #

(HasProducts k, Ob a) => Comonoid ('PR a :: PROD k) Source Comments # 
Instance details

Defined in Proarrow.Monoid

Methods

counit :: 'PR a ~> (Unit :: PROD k) Source Comments #

comult :: 'PR a ~> ('PR a ** 'PR a) Source Comments #

CategoryOf k => Comonoid (CatAsComonoid k :: Type -> Type) Source Comments # 
Instance details

Defined in Proarrow.Category.Instance.Nat

(Bicategory kk, Ob (I :: kk a a), Comonad c, Ob c) => Comonoid ('E c :: ENDO kk a) Source Comments #

Comonads are comonoids in the category of endo-1-cells.

Instance details

Defined in Proarrow.Category.Monoidal.Endo

Methods

counit :: 'E c ~> (Unit :: ENDO kk a) Source Comments #

comult :: 'E c ~> ('E c ** 'E c) Source Comments #

memptyAct :: forall m c (a :: m) (n :: c). (MonoidalAction m c, Monoid a, Ob n) => n ~> Act a n Source Comments #

mappendAct :: forall m c (a :: m) (n :: c). (MonoidalAction m c, Monoid a, Ob n) => Act a (Act a n) ~> Act a n Source Comments #

class (MonoidalAction m c, Monoid a, Ob n) => ModuleObject (a :: m) (n :: c) where Source Comments #

Methods

action :: Act a n ~> n Source Comments #