From 11c3fda9ff63c466566e1f1375f5d8ae03833c90 Mon Sep 17 00:00:00 2001 From: Tom Smeding Date: Wed, 12 Mar 2025 23:17:48 +0100 Subject: Slight cleanup of arith instances for Mixed/Ranked/Shaped Reformulate error messages; add NumElt superclass to FloatElt --- src/Data/Array/Nested/Internal/Ranked.hs | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) (limited to 'src/Data/Array/Nested/Internal/Ranked.hs') diff --git a/src/Data/Array/Nested/Internal/Ranked.hs b/src/Data/Array/Nested/Internal/Ranked.hs index 5f453a5..bc47579 100644 --- a/src/Data/Array/Nested/Internal/Ranked.hs +++ b/src/Data/Array/Nested/Internal/Ranked.hs @@ -189,12 +189,12 @@ instance (KnownNat n, KnownElt a) => KnownElt (Ranked n a) where arithPromoteRanked :: forall n a b. - (forall sh. Mixed sh a -> Mixed sh b) + (Mixed (Replicate n Nothing) a -> Mixed (Replicate n Nothing) b) -> Ranked n a -> Ranked n b arithPromoteRanked = coerce arithPromoteRanked2 :: forall n a b c. - (forall sh. Mixed sh a -> Mixed sh b -> Mixed sh c) + (Mixed (Replicate n Nothing) a -> Mixed (Replicate n Nothing) b -> Mixed (Replicate n Nothing) c) -> Ranked n a -> Ranked n b -> Ranked n c arithPromoteRanked2 = coerce @@ -205,15 +205,15 @@ instance (NumElt a, PrimElt a, Num a) => Num (Ranked n a) where negate = arithPromoteRanked negate abs = arithPromoteRanked abs signum = arithPromoteRanked signum - fromInteger = error "Data.Array.Nested.fromInteger: No singletons available, use explicit rreplicateScal" + fromInteger = error "Data.Array.Nested(Ranked).fromInteger: No singletons available, use explicit rreplicateScal" -instance (FloatElt a, NumElt a, PrimElt a, Num a) => Fractional (Ranked n a) where - fromRational _ = error "Data.Array.Nested.fromRational: No singletons available, use explicit rreplicateScal" +instance (FloatElt a, PrimElt a, Num a) => Fractional (Ranked n a) where + fromRational _ = error "Data.Array.Nested(Ranked).fromRational: No singletons available, use explicit rreplicateScal" recip = arithPromoteRanked recip (/) = arithPromoteRanked2 (/) -instance (FloatElt a, NumElt a, PrimElt a, Num a) => Floating (Ranked n a) where - pi = error "Data.Array.Nested.pi: No singletons available, use explicit rreplicateScal" +instance (FloatElt a, PrimElt a, Num a) => Floating (Ranked n a) where + pi = error "Data.Array.Nested(Ranked).pi: No singletons available, use explicit rreplicateScal" exp = arithPromoteRanked exp log = arithPromoteRanked log sqrt = arithPromoteRanked sqrt -- cgit v1.2.3-70-g09d2