Copyright | (C) 2021 Koz Ross |
---|---|
License | BSD-style (see the file LICENSE) |
Maintainer | Koz Ross <koz.ross@retro-freedom.nz> |
Stability | Experimental |
Portability | GHC only |
Safe Haskell | Trustworthy |
Language | Haskell2010 |
Provides a way to attach an identity to any semigroupoid.
Synopsis
-
data
Categorical
s a b
where
- Id :: Categorical s a a
- Embed :: s a b -> Categorical s a b
- runCategorical :: (a ~ b => r) -> (s a b -> r) -> Categorical s a b -> r
Documentation
data Categorical s a b where Source #
Attaches an identity.
Since: 5.3.6
Id :: Categorical s a a | |
Embed :: s a b -> Categorical s a b |
Instances
Semigroupoid s => Category ( Categorical s :: Type -> Type -> Type ) Source # |
Since: 5.3.6 |
Defined in Data.Semigroupoid.Categorical id :: forall (a :: k). Categorical s a a Source # (.) :: forall (b :: k) (c :: k) (a :: k). Categorical s b c -> Categorical s a b -> Categorical s a c Source # |
|
Semigroupoid s => Semigroupoid ( Categorical s :: Type -> Type -> Type ) Source # |
Since: 5.3.6 |
Defined in Data.Semigroupoid.Categorical o :: forall (j :: k) (k :: k) (i :: k). Categorical s j k -> Categorical s i j -> Categorical s i k Source # |
runCategorical :: (a ~ b => r) -> (s a b -> r) -> Categorical s a b -> r Source #
Since: 5.3.6