packages feed

NumberSieves 0.1.1 → 0.1.2

raw patch · 5 files changed

+18/−11 lines, 5 filesPVP: major bump suggested

API removals or changes: PVP suggests a major version bump

API changes (from Hackage documentation)

- Math.Sieve.Factor: sieve :: Integral a => a -> FactorSieve
+ Math.Sieve.Factor: sieve :: (Show a, Integral a) => a -> FactorSieve
- Math.Sieve.Phi: sieve :: Integral a => a -> PhiSieve
+ Math.Sieve.Phi: sieve :: (Show a, Integral a) => a -> PhiSieve

Files

CHANGES view
@@ -1,3 +1,10 @@+Version 0.1.2:  (2012-08-21)+  * Added Show constraints for compatibility with recent versions of+    GHC,  as Show is no longer a superclass of Integral++  * Applied a patch from Melissa O'Neill that fixes the priority queue+    in her sieve.   This bug does not effect the prime generation+ Version 0.1.1:  (2010-09-02)   * Changed the module naming hierarchy from NumberTheory.* to Math.* 
Math/Sieve/Factor.hs view
@@ -3,7 +3,7 @@ ----------------------------------------------------------------------------- -- | -- Module      :  Math.Sieve.Factor--- Copyright   :  (c) 2009-2010 Leon P Smith+-- Copyright   :  (c) 2009-2012 Leon P Smith -- License     :  BSD3 -- -- Maintainer  :  leon@melding-monads.com@@ -95,7 +95,7 @@ flsqrt x = floor (sqrt (fromIntegral x))  -- |  Finds the smallest prime divisor of every number up to a given limit.-sieve :: Integral a => a -> FactorSieve+sieve :: (Show a, Integral a) => a -> FactorSieve sieve limit     | not (0 <= intlim && intlim < 2^32)       = error ("Math.Sieve.Factor.sieve: out of bounds: "  ++ show limit)
Math/Sieve/ONeill.hs view
@@ -1,7 +1,7 @@ ----------------------------------------------------------------------------- -- | -- Module      :  Math.Sieve.ONeill--- Copyright   :  (c) 2006-2010 Melissa O'Neill+-- Copyright   :  (c) 2006-2011 Melissa O'Neill -- License     :  BSD3 -- -- Maintainer  :  leon@melding-monads.com@@ -30,7 +30,7 @@ -- (This change does have consequences for representing the number table -- from which composites are "crossed out".) ----- (c) 2006-2007 Melissa O'Neill.  Code may be used freely so long as+-- (c) 2006-2011 Melissa O'Neill.  Code may be used freely so long as -- this copyright message is retained and changed versions of the file -- are clearly marked. @@ -93,7 +93,7 @@  leftrem :: PriorityQ k v -> (k, v, PriorityQ k v) leftrem (Br vk vv Lf Lf) = (vk, vv, Lf)-leftrem (Br vk vv t1 t2) = (wk, wv, Br vk vv t t2) where+leftrem (Br vk vv t1 t2) = (wk, wv, Br vk vv t2 t) where     (wk, wv, t) = leftrem t1 leftrem _                = error "Empty heap!" 
Math/Sieve/Phi.hs view
@@ -3,7 +3,7 @@ ----------------------------------------------------------------------------- -- | -- Module      :  Math.Sieve.Phi--- Copyright   :  (c) 2009-2010 Leon P Smith+-- Copyright   :  (c) 2009-2012 Leon P Smith -- License     :  BSD3 -- -- Maintainer  :  leon@melding-monads.com@@ -70,7 +70,7 @@ ix n = shiftR n 1  -- |  Calculate Euler's Totient for every integer up to the given limit-sieve :: Integral a => a -> PhiSieve+sieve :: (Show a, Integral a) => a -> PhiSieve sieve limit   | not (0 <= intlim && intlim <= fromIntegral (maxBound :: Word32))     = error ("Math.Sieve.Phi:  out of bounds: " ++ show limit)
NumberSieves.cabal view
@@ -1,5 +1,5 @@ Name:                NumberSieves-Version:             0.1.1+Version:             0.1.2 Description:         This package includes the Sieve of O'Neill and two generalizations of the Sieve of Eratosthenes.   The Sieve of O'Neill is a fully incremental primality sieve based on priority queues.  The other two are array based, and are not incremental.   One sieves the smallest prime factor,  and is useful if you want to factor a large quantity of small numbers.   The other sieves Euler's Totient,  which is the number of positive integers relatively prime and less than a given number. License:             BSD3 License-file:        LICENSE@@ -20,9 +20,9 @@  source-repository head   type:      darcs-  location:  http://patch-tag.com/r/lpsmith/NumberSieves/pullrepo+  location:  http://patch-tag.com/r/lpsmith/NumberSieves  source-repository this   type:      darcs-  location:  http://patch-tag.com/r/lpsmith/NumberSieves/pullrepo-  tag:       0.1.1+  location:  http://patch-tag.com/r/lpsmith/NumberSieves+  tag:       0.1.2