packages feed

alg 0.2.8.0 → 0.2.9.0

raw patch · 2 files changed

+17/−1 lines, 2 filesPVP: major bump suggested

API removals or changes: PVP suggests a major version bump

API changes (from Hackage documentation)

- Relation.Binary.Comparison: instance Relation.Binary.Comparison.Eq a => Relation.Binary.Comparison.Eq (GHC.Base.Maybe a)
- Relation.Binary.Comparison: instance Relation.Binary.Comparison.Eq a => Relation.Binary.Comparison.Eq (Relation.Binary.Comparison.Lexical (GHC.Base.Maybe a))
- Relation.Binary.Comparison: instance Relation.Binary.Comparison.Ord a => Relation.Binary.Comparison.Ord (Relation.Binary.Comparison.Lexical (GHC.Base.Maybe a))
- Relation.Binary.Comparison: instance Relation.Binary.Comparison.PartialEq a => Relation.Binary.Comparison.PartialEq (GHC.Base.Maybe a)
- Relation.Binary.Comparison: instance Relation.Binary.Comparison.PartialOrd a => Relation.Binary.Comparison.PartialOrd (GHC.Base.Maybe a)
- Relation.Binary.Comparison: instance Relation.Binary.Comparison.PartialOrd a => Relation.Binary.Comparison.PartialOrd (Relation.Binary.Comparison.Lexical (GHC.Base.Maybe a))
- Relation.Binary.Comparison: instance Relation.Binary.Comparison.Preord a => Relation.Binary.Comparison.Preord (GHC.Base.Maybe a)
- Relation.Binary.Comparison: instance Relation.Binary.Comparison.Preord a => Relation.Binary.Comparison.Preord (Relation.Binary.Comparison.Lexical (GHC.Base.Maybe a))
+ Algebra: infixr 6 <>
+ Relation.Binary.Comparison: infix 4 ≡
+ Relation.Binary.Comparison: instance (Relation.Binary.Comparison.Ord a, Relation.Binary.Comparison.Ord b, Relation.Binary.Comparison.Ord c) => Relation.Binary.Comparison.Ord (Relation.Binary.Comparison.Lexical (a, b, c))
+ Relation.Binary.Comparison: instance (Relation.Binary.Comparison.PartialEq a, Relation.Binary.Comparison.PartialEq b, Relation.Binary.Comparison.PartialEq c) => Relation.Binary.Comparison.PartialEq (a, b, c)
+ Relation.Binary.Comparison: instance (Relation.Binary.Comparison.PartialOrd a, Relation.Binary.Comparison.PartialOrd b, Relation.Binary.Comparison.PartialOrd c) => Relation.Binary.Comparison.PartialOrd (Relation.Binary.Comparison.Lexical (a, b, c))
+ Relation.Binary.Comparison: instance (Relation.Binary.Comparison.PartialOrd a, Relation.Binary.Comparison.PartialOrd b, Relation.Binary.Comparison.PartialOrd c) => Relation.Binary.Comparison.PartialOrd (a, b, c)
+ Relation.Binary.Comparison: instance (Relation.Binary.Comparison.PartialOrd a, Relation.Binary.Comparison.PartialOrd b, Relation.Binary.Comparison.PartialOrd c) => Relation.Binary.Comparison.Preord (Relation.Binary.Comparison.Lexical (a, b, c))
+ Relation.Binary.Comparison: instance (Relation.Binary.Comparison.PartialOrd a, Relation.Binary.Comparison.PartialOrd b, Relation.Binary.Comparison.PartialOrd c, Relation.Binary.Comparison.Eq a, Relation.Binary.Comparison.Eq b, Relation.Binary.Comparison.Eq c) => Relation.Binary.Comparison.Eq (Relation.Binary.Comparison.Lexical (a, b, c))
+ Relation.Binary.Comparison: instance (Relation.Binary.Comparison.Preord a, Relation.Binary.Comparison.Preord b, Relation.Binary.Comparison.Preord c) => Relation.Binary.Comparison.Preord (a, b, c)
+ Relation.Binary.Comparison: instance Relation.Binary.Comparison.Eq a => Relation.Binary.Comparison.Eq (GHC.Maybe.Maybe a)
+ Relation.Binary.Comparison: instance Relation.Binary.Comparison.Eq a => Relation.Binary.Comparison.Eq (Relation.Binary.Comparison.Lexical (GHC.Maybe.Maybe a))
+ Relation.Binary.Comparison: instance Relation.Binary.Comparison.Ord a => Relation.Binary.Comparison.Ord (Relation.Binary.Comparison.Lexical (GHC.Maybe.Maybe a))
+ Relation.Binary.Comparison: instance Relation.Binary.Comparison.PartialEq a => Relation.Binary.Comparison.PartialEq (GHC.Maybe.Maybe a)
+ Relation.Binary.Comparison: instance Relation.Binary.Comparison.PartialOrd a => Relation.Binary.Comparison.PartialOrd (GHC.Maybe.Maybe a)
+ Relation.Binary.Comparison: instance Relation.Binary.Comparison.PartialOrd a => Relation.Binary.Comparison.PartialOrd (Relation.Binary.Comparison.Lexical (GHC.Maybe.Maybe a))
+ Relation.Binary.Comparison: instance Relation.Binary.Comparison.Preord a => Relation.Binary.Comparison.Preord (GHC.Maybe.Maybe a)
+ Relation.Binary.Comparison: instance Relation.Binary.Comparison.Preord a => Relation.Binary.Comparison.Preord (Relation.Binary.Comparison.Lexical (GHC.Maybe.Maybe a))

Files

Relation/Binary/Comparison.hs view
@@ -204,6 +204,22 @@ instance (PartialOrd a, PartialOrd b, Eq a, Eq b) => Eq (Lexical (a, b)) instance (Ord a, Ord b) => Ord (Lexical (a, b)) +instance (PartialEq a, PartialEq b, PartialEq c) => PartialEq (a, b, c) where+    (aₗ, bₗ, cₗ) ≡ (aᵣ, bᵣ, cᵣ) = aₗ ≡ aᵣ && bₗ ≡ bᵣ && cₗ ≡ cᵣ+instance (Preord a, Preord b, Preord c) => Preord (a, b, c) where+    (aₗ, bₗ, cₗ) ≤ (aᵣ, bᵣ, cᵣ) = aₗ ≤ aᵣ && bₗ ≤ bᵣ && cₗ ≤ cᵣ+instance (PartialOrd a, PartialOrd b, PartialOrd c) => PartialOrd (a, b, c) where+    tryCompare (aₗ, bₗ, cₗ) (aᵣ, bᵣ, cᵣ) = tryCompare (aₗ, (bₗ, cₗ)) (aᵣ, (bᵣ, cᵣ))++instance (PartialOrd a, PartialOrd b, PartialOrd c) => Preord (Lexical (a, b, c)) where+    a ≤ b = Just GT ≢ tryCompare a b+    a < b = Just LT ≡ tryCompare a b+instance (PartialOrd a, PartialOrd b, PartialOrd c) => PartialOrd (Lexical (a, b, c)) where+    Lexical (aₗ, bₗ, cₗ) `tryCompare` Lexical (aᵣ, bᵣ, cᵣ) =+        tryCompare aₗ aᵣ <> tryCompare bₗ bᵣ <> tryCompare cₗ cᵣ+instance (PartialOrd a, PartialOrd b, PartialOrd c, Eq a, Eq b, Eq c) => Eq (Lexical (a, b, c))+instance (Ord a, Ord b, Ord c) => Ord (Lexical (a, b, c))+ instance (Preord a, Preord b) => Preord (Either a b) where     Left  x ≤ Left  y = x ≤ y     Right x ≤ Right y = x ≤ y
alg.cabal view
@@ -1,5 +1,5 @@ name:                alg-version:             0.2.8.0+version:             0.2.9.0 synopsis:            Algebraic structures -- description:          license:             BSD3