Safe Haskell | None |
---|---|
Language | Haskell2010 |
Documentation
(||) :: forall k (as :: [k]) (bs :: [k]) (cs :: [k]) (ds :: [k]). Monoidal k => (as ~> bs) -> (cs ~> ds) -> (as ++ cs) ~> (bs ++ ds) infixl 8 Source Comments #
(==) :: forall k (a :: k) (b :: k) (c :: k). CategoryOf k => (a ~> b) -> (b ~> c) -> a ~> c infixl 7 Source Comments #
class ((as ++ bs) ++ cs) ~ (as ++ (bs ++ cs)) => Assoc (as :: [k]) (bs :: [k]) (cs :: [k]) Source Comments #
class (CategoryOf k, as ~ (as ++ ('[] :: [k])), forall (bs :: [k]) (cs :: [k]). Assoc as bs cs) => IsList (as :: [k]) where Source Comments #
concatFold :: forall {k} (as :: [k]) (bs :: [k]). (Ob as, Ob bs, Monoidal k) => (Fold as ** Fold bs) ~> Fold (as ++ bs) Source Comments #
splitFold :: forall {k} (as :: [k]) (bs :: [k]). (Ob as, Ob bs, Monoidal k) => Fold (as ++ bs) ~> (Fold as ** Fold bs) Source Comments #
data Strictified (as :: [k]) (bs :: [k]) where Source Comments #
Str :: forall {k} (as :: [k]) (bs :: [k]). (Ob as, Ob bs) => (Fold as ~> Fold bs) -> Strictified as bs |
Instances
Monoidal k => Promonad (Strictified :: [k] -> [k] -> Type) Source Comments # | |
Defined in Proarrow.Category.Monoidal.Strictified id :: forall (a :: [k]). Ob a => Strictified a a Source Comments # (.) :: forall (b :: [k]) (c :: [k]) (a :: [k]). Strictified b c -> Strictified a b -> Strictified a c Source Comments # | |
Monoidal k => MonoidalProfunctor (Strictified :: [k] -> [k] -> Type) Source Comments # | |
Defined in Proarrow.Category.Monoidal.Strictified par0 :: Strictified (Unit :: [k]) (Unit :: [k]) Source Comments # par :: forall (x1 :: [k]) (x2 :: [k]) (y1 :: [k]) (y2 :: [k]). Strictified x1 x2 -> Strictified y1 y2 -> Strictified (x1 ** y1) (x2 ** y2) Source Comments # | |
Monoidal k => Profunctor (Strictified :: [k] -> [k] -> Type) Source Comments # | |
Defined in Proarrow.Category.Monoidal.Strictified dimap :: forall (c :: [k]) (a :: [k]) (b :: [k]) (d :: [k]). (c ~> a) -> (b ~> d) -> Strictified a b -> Strictified c d Source Comments # (\\) :: forall (a :: [k]) (b :: [k]) r. ((Ob a, Ob b) => r) -> Strictified a b -> r Source Comments # |
Orphan instances
Monoidal k => Monoidal [k] Source Comments # | |||||
leftUnitor :: forall (a :: [k]). Ob a => ((Unit :: [k]) ** a) ~> a Source Comments # leftUnitorInv :: forall (a :: [k]). Ob a => a ~> ((Unit :: [k]) ** a) Source Comments # rightUnitor :: forall (a :: [k]). Ob a => (a ** (Unit :: [k])) ~> a Source Comments # rightUnitorInv :: forall (a :: [k]). Ob a => a ~> (a ** (Unit :: [k])) Source Comments # associator :: forall (a :: [k]) (b :: [k]) (c :: [k]). (Ob a, Ob b, Ob c) => ((a ** b) ** c) ~> (a ** (b ** c)) Source Comments # associatorInv :: forall (a :: [k]) (b :: [k]) (c :: [k]). (Ob a, Ob b, Ob c) => (a ** (b ** c)) ~> ((a ** b) ** c) Source Comments # | |||||
Monoidal k => CategoryOf [k] Source Comments # | |||||
|