digit 0.2.7 → 0.2.8
raw patch · 3 files changed
+40/−2 lines, 3 filesPVP ok
version bump matches the API change (PVP)
API changes (from Hackage documentation)
+ Data.Digit: (/+/) :: Digit -> Digit -> (Digit, Digit)
Files
- changelog.md +4/−0
- digit.cabal +1/−1
- src/Data/Digit.hs +35/−1
changelog.md view
@@ -1,3 +1,7 @@+0.2.8++* Add `(/+/)` function.+ 0.2.7 * Add `mantissa` function for digits.
digit.cabal view
@@ -1,5 +1,5 @@ name: digit-version: 0.2.7+version: 0.2.8 license: BSD3 license-File: etc/LICENCE author: Tony Morris <ʇǝu˙sıɹɹoɯʇ@ןןǝʞsɐɥ>
src/Data/Digit.hs view
@@ -58,6 +58,7 @@ , digits , digitsI , digitsS+, (/+/) , (.+.) , (.*.) , mantissa@@ -726,7 +727,7 @@ dpat (d:[]) = maybe (error "not a digit") (dataToPatQ (const Nothing)) (d ^? digitC) dpat _ = error "not a digit" -data Digits =+newtype Digits = Digits [Digit] deriving (Eq, Ord, Show, Data, Typeable) @@ -802,6 +803,39 @@ Digits mempty mappend = (<>)++-- |+--+-- >>> D0 /+/ D0+-- (0,0)+--+-- >>> D0 /+/ D1+-- (0,1)+--+-- >>> D1 /+/ D0+-- (0,1)+--+-- >>> D4 /+/ D5+-- (0,9)+--+-- >>> D5 /+/ D5+-- (1,0)+--+-- >>> D5 /+/ D6+-- (1,1)+--+-- >>> D8 /+/ D7+-- (1,5)+--+-- >>> D9 /+/ D9+-- (1,8)+(/+/) ::+ Digit+ -> Digit+ -> (Digit, Digit)+a /+/ b =+ let (x, r) = divMod10 (digit # a + digit # b)+ in (mod10 (x :: Integer), r) (.+.) :: Digits