Portability | portable |
---|---|

Stability | experimental |

Maintainer | Sebastian Fischer (sebf@informatik.uni-kiel.de) |

This Haskell library provides an efficient lazy wheel sieve for prime generation ispired by Lazy wheel sieves and spirals of primes [1] by Colin Runciman and The Genuine Sieve of Eratosthenes [2] by Melissa O'Neil.

- primes :: [Integer]
- wheelSieve :: Int -> [Integer]

# Documentation

This global constant is an infinite list of prime numbers. It is
generated by a lazy wheel sieve and shared among different
applications. If you are concerned about the memory requirements of
sharing many primes you can call the function `wheelSieve`

directly.

This function returns an infinite list of prime numbers by sieving
with a wheel that cancels the multiples of the first `n`

primes
where `n`

is the argument given to `wheelSieve`

. Don't use too
large wheels because computing them is more expensive than
sieving. The number `6`

is a good value to pass to this function.