packages feed

FiniteCategories 0.6.3.1 → 0.6.4.0

raw patch · 3 files changed

+24/−5 lines, 3 filesPVP ok

version bump matches the API change (PVP)

API changes (from Hackage documentation)

+ Math.CartesianClosedCategory: internalCodomainLeg :: Morphism m o => Tripod c m o -> m
+ Math.CartesianClosedCategory: internalDomainLeg :: Morphism m o => Tripod c m o -> m
+ Math.CartesianClosedCategory: powerObjectLeg :: Morphism m o => Tripod c m o -> m

Files

CHANGELOG.md view
@@ -54,4 +54,8 @@ 
 ## 0.6.3.1 -- 2024-03-06
 
-* Bug fixes in helpers for cones and cocones+* Bug fixes in helpers for cones and cocones
+
+## 0.6.4.0 -- 2024-03-08
+
+* Adding leg getter in CartesianClosedCategory
FiniteCategories.cabal view
@@ -14,7 +14,7 @@ -- PVP summary:      +-+------- breaking API changes
 --                   | | +----- non-breaking API additions
 --                   | | | +--- code changes with no API change
-version:             0.6.3.1
+version:             0.6.4.0
 
 -- A short (one-line) description of the package.
 synopsis: Finite categories and usual categorical constructions on them.
src/Math/CartesianClosedCategory.hs view
@@ -32,6 +32,9 @@     -- ** Getters
     twoCone,
     evalMap,
+    internalDomainLeg,
+    internalCodomainLeg,
+    powerObjectLeg,
     internalDomain,
     internalCodomain,
     powerObject,
@@ -106,17 +109,29 @@     unsafeTripod :: Cone DiscreteTwo DiscreteTwoAr DiscreteTwoOb c m o -> m -> Tripod c m o
     unsafeTripod cone em = Tripod{twoCone = cone, evalMap = em}    
     
+    -- | Return the internal domain leg of a 'Tripod'.
+    internalDomainLeg :: (Morphism m o) => Tripod c m o -> m
+    internalDomainLeg t = (legsCone (twoCone t)) =>$ B
+    
     -- | Return the internal domain of a 'Tripod'.
     internalDomain :: (Morphism m o) => Tripod c m o -> o
-    internalDomain t = target $ (legsCone (twoCone t)) =>$ B
+    internalDomain = target.internalDomainLeg
     
+    -- | Return the internal codomain leg of a 'Tripod'.
+    internalCodomainLeg :: (Morphism m o) => Tripod c m o -> m
+    internalCodomainLeg t = evalMap t
+    
     -- | Return the internal codomain of a 'Tripod'.
     internalCodomain :: (Morphism m o) => Tripod c m o -> o
-    internalCodomain t = target $ evalMap t
+    internalCodomain = target.internalCodomainLeg
     
+    -- | Return the power object leg of a 'Tripod'.
+    powerObjectLeg :: (Morphism m o) => Tripod c m o -> m
+    powerObjectLeg t = (legsCone (twoCone t)) =>$ A
+    
     -- | Return the power object of a 'Tripod'.
     powerObject :: (Morphism m o) => Tripod c m o -> o
-    powerObject t = target $ (legsCone (twoCone t)) =>$ A
+    powerObject = target.powerObjectLeg
     
     -- | Return the category in which a 'Tripod' lives.
     universeCategoryTripod :: (Category c m o, Morphism m o, Eq c, Eq m, Eq o) =>