packages feed

data-category 0.8.1 → 0.8.2

raw patch · 4 files changed

+13/−6 lines, 4 filesPVP: major bump suggested

API removals or changes: PVP suggests a major version bump

API changes (from Hackage documentation)

- Data.Category: type Kind (cat :: k -> k -> *) = k
- Data.Category.Coproduct: instance (Data.Category.Functor.Functor f, Data.Category.Functor.Dom f GHC.Types.~ (Data.Category.Op c Data.Category.Product.:**: d), Data.Category.Functor.Cod f GHC.Types.~ (->), Data.Category.Category c, Data.Category.Category d) => Data.Category.Category (Data.Category.Coproduct.Cograph f)
- Data.Category.Coproduct: instance (Data.Category.Functor.Functor f, Data.Category.Functor.Functor g, Data.Category.Functor.Dom f GHC.Types.~ Data.Category.Functor.Dom g, Data.Category.Functor.Cod f GHC.Types.~ Data.Category.Functor.Cod g) => Data.Category.Functor.Functor (Data.Category.Coproduct.NatAsFunctor f g)
- Data.Category.Dialg: instance (Data.Category.Functor.Functor m, Data.Category.Functor.Dom m GHC.Types.~ k, Data.Category.Functor.Cod m GHC.Types.~ k) => Data.Category.Functor.Functor (Data.Category.Dialg.ForgetAlg m)
- Data.Category.Dialg: instance (Data.Category.Functor.Functor m, Data.Category.Functor.Dom m GHC.Types.~ k, Data.Category.Functor.Cod m GHC.Types.~ k) => Data.Category.Functor.Functor (Data.Category.Dialg.FreeAlg m)
- Data.Category.Enriched: instance (Data.Category.Enriched.ECategory (Data.Category.Enriched.ECod g), Data.Category.Enriched.ECategory (Data.Category.Enriched.EDom h), Data.Category.Enriched.V (Data.Category.Enriched.EDom h) GHC.Types.~ Data.Category.Enriched.V (Data.Category.Enriched.ECod g), Data.Category.Enriched.ECod h GHC.Types.~ Data.Category.Enriched.EDom g) => Data.Category.Enriched.EFunctor (g Data.Category.Enriched.:.: h)
- Data.Category.Enriched: instance (Data.Category.Enriched.ECategory c1, Data.Category.Enriched.ECategory c2, Data.Category.Enriched.V c1 GHC.Types.~ Data.Category.Enriched.V c2) => Data.Category.Enriched.EFunctor (Data.Category.Enriched.Const c1 c2 x)
- Data.Category.Enriched: instance (Data.Category.Enriched.ECategory k1, Data.Category.Enriched.ECategory k2, Data.Category.Enriched.V k1 GHC.Types.~ Data.Category.Enriched.V k2) => Data.Category.Enriched.ECategory (k1 Data.Category.Enriched.:<>: k2)
- Data.Category.Enriched: instance (Data.Category.Enriched.EFunctor f1, Data.Category.Enriched.EFunctor f2, Data.Category.Enriched.V (Data.Category.Enriched.ECod f1) GHC.Types.~ Data.Category.Enriched.V (Data.Category.Enriched.ECod f2)) => Data.Category.Enriched.EFunctor (f1 Data.Category.Enriched.:<*>: f2)
- Data.Category.Enriched: instance (Data.Category.Enriched.HasEnds (Data.Category.Enriched.V a), Data.Category.Enriched.V a GHC.Types.~ Data.Category.Enriched.V b) => Data.Category.Enriched.ECategory (Data.Category.Enriched.FunCat a b)
- Data.Category.Fix: instance (Data.Category.Monoidal.TensorProduct t, Data.Category.Functor.Cod t GHC.Types.~ f (Data.Category.Fix.Fix f)) => Data.Category.Monoidal.TensorProduct (Data.Category.Fix.WrapTensor (Data.Category.Fix.Fix f) t)
- Data.Category.Kleisli: instance (Data.Category.Functor.Functor m, Data.Category.Functor.Dom m GHC.Types.~ k, Data.Category.Functor.Cod m GHC.Types.~ k) => Data.Category.Functor.Functor (Data.Category.Kleisli.KleisliForget m)
- Data.Category.Kleisli: instance (Data.Category.Functor.Functor m, Data.Category.Functor.Dom m GHC.Types.~ k, Data.Category.Functor.Cod m GHC.Types.~ k) => Data.Category.Functor.Functor (Data.Category.Kleisli.KleisliFree m)
- Data.Category.Yoneda: instance (Data.Category.Category k, Data.Category.Functor.Functor f, Data.Category.Functor.Dom f GHC.Types.~ Data.Category.Op k, Data.Category.Functor.Cod f GHC.Types.~ (->)) => Data.Category.Functor.Functor (Data.Category.Yoneda.Yoneda k f)
+ Data.Category: type family Kind (cat :: k -> k -> *) :: *
+ Data.Category.Coproduct: instance (Data.Category.Functor.Functor f, Data.Category.Functor.Dom f Data.Type.Equality.~ (Data.Category.Op c Data.Category.Product.:**: d), Data.Category.Functor.Cod f Data.Type.Equality.~ (->), Data.Category.Category c, Data.Category.Category d) => Data.Category.Category (Data.Category.Coproduct.Cograph f)
+ Data.Category.Coproduct: instance (Data.Category.Functor.Functor f, Data.Category.Functor.Functor g, Data.Category.Functor.Dom f Data.Type.Equality.~ Data.Category.Functor.Dom g, Data.Category.Functor.Cod f Data.Type.Equality.~ Data.Category.Functor.Cod g) => Data.Category.Functor.Functor (Data.Category.Coproduct.NatAsFunctor f g)
+ Data.Category.Dialg: instance (Data.Category.Functor.Functor m, Data.Category.Functor.Dom m Data.Type.Equality.~ k, Data.Category.Functor.Cod m Data.Type.Equality.~ k) => Data.Category.Functor.Functor (Data.Category.Dialg.ForgetAlg m)
+ Data.Category.Dialg: instance (Data.Category.Functor.Functor m, Data.Category.Functor.Dom m Data.Type.Equality.~ k, Data.Category.Functor.Cod m Data.Type.Equality.~ k) => Data.Category.Functor.Functor (Data.Category.Dialg.FreeAlg m)
+ Data.Category.Enriched: instance (Data.Category.Enriched.ECategory (Data.Category.Enriched.ECod g), Data.Category.Enriched.ECategory (Data.Category.Enriched.EDom h), Data.Category.Enriched.V (Data.Category.Enriched.EDom h) Data.Type.Equality.~ Data.Category.Enriched.V (Data.Category.Enriched.ECod g), Data.Category.Enriched.ECod h Data.Type.Equality.~ Data.Category.Enriched.EDom g) => Data.Category.Enriched.EFunctor (g Data.Category.Enriched.:.: h)
+ Data.Category.Enriched: instance (Data.Category.Enriched.ECategory c1, Data.Category.Enriched.ECategory c2, Data.Category.Enriched.V c1 Data.Type.Equality.~ Data.Category.Enriched.V c2) => Data.Category.Enriched.EFunctor (Data.Category.Enriched.Const c1 c2 x)
+ Data.Category.Enriched: instance (Data.Category.Enriched.ECategory k1, Data.Category.Enriched.ECategory k2, Data.Category.Enriched.V k1 Data.Type.Equality.~ Data.Category.Enriched.V k2) => Data.Category.Enriched.ECategory (k1 Data.Category.Enriched.:<>: k2)
+ Data.Category.Enriched: instance (Data.Category.Enriched.EFunctor f1, Data.Category.Enriched.EFunctor f2, Data.Category.Enriched.V (Data.Category.Enriched.ECod f1) Data.Type.Equality.~ Data.Category.Enriched.V (Data.Category.Enriched.ECod f2)) => Data.Category.Enriched.EFunctor (f1 Data.Category.Enriched.:<*>: f2)
+ Data.Category.Enriched: instance (Data.Category.Enriched.HasEnds (Data.Category.Enriched.V a), Data.Category.Enriched.V a Data.Type.Equality.~ Data.Category.Enriched.V b) => Data.Category.Enriched.ECategory (Data.Category.Enriched.FunCat a b)
+ Data.Category.Fix: instance (Data.Category.Monoidal.TensorProduct t, Data.Category.Functor.Cod t Data.Type.Equality.~ f (Data.Category.Fix.Fix f)) => Data.Category.Monoidal.TensorProduct (Data.Category.Fix.WrapTensor (Data.Category.Fix.Fix f) t)
+ Data.Category.Kleisli: instance (Data.Category.Functor.Functor m, Data.Category.Functor.Dom m Data.Type.Equality.~ k, Data.Category.Functor.Cod m Data.Type.Equality.~ k) => Data.Category.Functor.Functor (Data.Category.Kleisli.KleisliForget m)
+ Data.Category.Kleisli: instance (Data.Category.Functor.Functor m, Data.Category.Functor.Dom m Data.Type.Equality.~ k, Data.Category.Functor.Cod m Data.Type.Equality.~ k) => Data.Category.Functor.Functor (Data.Category.Kleisli.KleisliFree m)
+ Data.Category.Yoneda: instance (Data.Category.Category k, Data.Category.Functor.Functor f, Data.Category.Functor.Dom f Data.Type.Equality.~ Data.Category.Op k, Data.Category.Functor.Cod f Data.Type.Equality.~ (->)) => Data.Category.Functor.Functor (Data.Category.Yoneda.Yoneda k f)
- Data.Category.CartesianClosed: ExpFunctor :: ExpFunctor (k :: * -> * -> *)
+ Data.Category.CartesianClosed: ExpFunctor :: ExpFunctor
- Data.Category.Coproduct: CodiagCoprod :: CodiagCoprod (k :: * -> * -> *)
+ Data.Category.Coproduct: CodiagCoprod :: CodiagCoprod
- Data.Category.Coproduct: Cotuple1 :: Obj c1 a -> Cotuple1 (c1 :: * -> * -> *) (c2 :: * -> * -> *) a
+ Data.Category.Coproduct: Cotuple1 :: Obj c1 a -> Cotuple1 a
- Data.Category.Coproduct: Cotuple2 :: Obj c2 a -> Cotuple2 (c1 :: * -> * -> *) (c2 :: * -> * -> *) a
+ Data.Category.Coproduct: Cotuple2 :: Obj c2 a -> Cotuple2 a
- Data.Category.Coproduct: Inj1 :: Inj1 (c1 :: * -> * -> *) (c2 :: * -> * -> *)
+ Data.Category.Coproduct: Inj1 :: Inj1
- Data.Category.Coproduct: Inj2 :: Inj2 (c1 :: * -> * -> *) (c2 :: * -> * -> *)
+ Data.Category.Coproduct: Inj2 :: Inj2
- Data.Category.Enriched: DiagProd :: DiagProd (k :: * -> * -> *)
+ Data.Category.Enriched: DiagProd :: DiagProd
- Data.Category.Enriched: EHom :: EHom (k :: * -> * -> *)
+ Data.Category.Enriched: EHom :: EHom
- Data.Category.Enriched: EndFunctor :: EndFunctor (k :: * -> * -> *)
+ Data.Category.Enriched: EndFunctor :: EndFunctor
- Data.Category.Enriched: Id :: Id (k :: * -> * -> *)
+ Data.Category.Enriched: Id :: Id
- Data.Category.Enriched: Y :: Y (k :: * -> * -> *)
+ Data.Category.Enriched: Y :: Y
- Data.Category.Fix: Unwrap :: Unwrap (f :: * -> * -> *)
+ Data.Category.Fix: Unwrap :: Unwrap
- Data.Category.Fix: Wrap :: Wrap (f :: * -> * -> *)
+ Data.Category.Fix: Wrap :: Wrap
- Data.Category.Functor: DiagProd :: DiagProd (k :: * -> * -> *)
+ Data.Category.Functor: DiagProd :: DiagProd
- Data.Category.Functor: Hom :: Hom (k :: * -> * -> *)
+ Data.Category.Functor: Hom :: Hom
- Data.Category.Functor: Id :: Id (k :: * -> * -> *)
+ Data.Category.Functor: Id :: Id
- Data.Category.Functor: OpOp :: OpOp (k :: * -> * -> *)
+ Data.Category.Functor: OpOp :: OpOp
- Data.Category.Functor: OpOpInv :: OpOpInv (k :: * -> * -> *)
+ Data.Category.Functor: OpOpInv :: OpOpInv
- Data.Category.Functor: Proj1 :: Proj1 (c1 :: * -> * -> *) (c2 :: * -> * -> *)
+ Data.Category.Functor: Proj1 :: Proj1
- Data.Category.Functor: Proj2 :: Proj2 (c1 :: * -> * -> *) (c2 :: * -> * -> *)
+ Data.Category.Functor: Proj2 :: Proj2
- Data.Category.Limit: ColimitFunctor :: ColimitFunctor (j :: * -> * -> *) (k :: * -> * -> *)
+ Data.Category.Limit: ColimitFunctor :: ColimitFunctor
- Data.Category.Limit: CoproductFunctor :: CoproductFunctor (k :: * -> * -> *)
+ Data.Category.Limit: CoproductFunctor :: CoproductFunctor
- Data.Category.Limit: LimitFunctor :: LimitFunctor (j :: * -> * -> *) (k :: * -> * -> *)
+ Data.Category.Limit: LimitFunctor :: LimitFunctor
- Data.Category.Limit: ProductFunctor :: ProductFunctor (k :: * -> * -> *)
+ Data.Category.Limit: ProductFunctor :: ProductFunctor
- Data.Category.NaturalTransformation: Apply :: Apply (c1 :: * -> * -> *) (c2 :: * -> * -> *)
+ Data.Category.NaturalTransformation: Apply :: Apply
- Data.Category.NaturalTransformation: FunctorCompose :: FunctorCompose (c :: * -> * -> *) (d :: * -> * -> *) (e :: * -> * -> *)
+ Data.Category.NaturalTransformation: FunctorCompose :: FunctorCompose
- Data.Category.NaturalTransformation: Tuple :: Tuple (c1 :: * -> * -> *) (c2 :: * -> * -> *)
+ Data.Category.NaturalTransformation: Tuple :: Tuple
- Data.Category.Void: Magic :: Magic (k :: * -> * -> *)
+ Data.Category.Void: Magic :: Magic
- Data.Category.Yoneda: Yoneda :: Yoneda (k :: * -> * -> *) f
+ Data.Category.Yoneda: Yoneda :: Yoneda f

Files

Data/Category.hs view
@@ -54,4 +54,5 @@    (Op a) . (Op b) = Op (b . a) -type Kind (cat :: k -> k -> *) = k+type family Kind (cat :: k -> k -> *) :: * where+  Kind (cat :: k -> k -> *) = k
Data/Category/Fix.hs view
@@ -26,10 +26,16 @@ deriving instance Category (f (Fix f)) => Category (Fix f)  -- | @Fix f@ inherits its (co)limits from @f (Fix f)@.-deriving instance HasInitialObject (f (Fix f)) => HasInitialObject (Fix f)+instance HasInitialObject (f (Fix f)) => HasInitialObject (Fix f) where+  type InitialObject (Fix f) = InitialObject (f (Fix f))+  initialObject = Fix initialObject+  initialize (Fix a) = Fix (initialize a)  -- | @Fix f@ inherits its (co)limits from @f (Fix f)@.-deriving instance HasTerminalObject (f (Fix f)) => HasTerminalObject (Fix f)+instance HasTerminalObject (f (Fix f)) => HasTerminalObject (Fix f) where+  type TerminalObject (Fix f) = TerminalObject (f (Fix f))+  terminalObject = Fix terminalObject+  terminate (Fix a) = Fix (terminate a)  -- | @Fix f@ inherits its (co)limits from @f (Fix f)@. instance HasBinaryProducts (f (Fix f)) => HasBinaryProducts (Fix f) where
Data/Category/Limit.hs view
@@ -57,12 +57,12 @@   , leftAdjointPreservesColimits   , leftAdjointPreservesColimitsInv -  -- ** Limits of type Void+  -- * Limits of type Void   , HasTerminalObject(..)   , HasInitialObject(..)   , Zero -  -- ** Limits of type Pair+  -- * Limits of type Pair   , HasBinaryProducts(..)   , ProductFunctor(..)   , (:*:)(..)
data-category.cabal view
@@ -1,5 +1,5 @@ name:                data-category-version:             0.8.1+version:             0.8.2 synopsis:            Category theory  description:         Data-category is a collection of categories, and some categorical constructions on them.