semigroups 0.7.1.1 → 0.7.1.2
raw patch · 2 files changed
+9/−3 lines, 2 files
Files
- Data/Semigroup.hs +8/−2
- semigroups.cabal +1/−1
Data/Semigroup.hs view
@@ -68,15 +68,21 @@ -- > (a <> b) <> c = a <> (b <> c) (<>) :: a -> a -> a - -- | Reduce a non-empty list with (<>)+ -- | Reduce a non-empty list with @\<\>@+ --+ -- The default definition should be sufficient, but this can be overridden for efficiency.+ -- sconcat :: NonEmpty a -> a sconcat (a :| as) = go a as where go b (c:cs) = b <> go c cs go b [] = b - -- | /O(log n)/ Repeat a value (n + 1) times.+ -- | Repeat a value (n + 1) times. -- -- > replicate1p n a = a <> a <> ... n + 1 times <> a+ --+ -- The default definition uses peasant multiplication, exploiting associativity to only+ -- require /O(log n)/ uses of @\<\>@. replicate1p :: Whole n => n -> a -> a replicate1p y0 x0 = f x0 (1 Prelude.+ y0)
semigroups.cabal view
@@ -1,6 +1,6 @@ name: semigroups category: Algebra, Data, Data Structures, Math-version: 0.7.1.1+version: 0.7.1.2 license: BSD3 cabal-version: >= 1.6 license-file: LICENSE