A simple serial quadratic sieve implemented in haskell