[Tested the code using GHC 7.8.4. Modified one example. Nils Anders Danielsson **20150109193035 Ignore-this: 2cb52084a2b8e12c6f2ff9e7271937e7 ] { hunk ./ChasingBottoms.cabal 102 - >> let primes = unfoldr (\(x:xs) -> Just (x, filter ((/= 0) . (`mod` x)) xs)) [2..] - >> timeOutMicro 100 (print $ filter ((== 1) . (`mod` 83)) primes) - >[167,499,9NonTermination - >> timeOutMicro 100 (print $ take 6 $ filter ((== 1) . (`mod` 83)) primes) - >[167,499,997,1163,1993NonTermination - >> timeOutMicro 100 (print $ take 6 $ filter ((== 1) . (`mod` 83)) primes) - >[167,499,997,1163,1993,2657] + >> let primes () = unfoldr (\(x:xs) -> Just (x, filter ((/= 0) . (`mod` x)) xs)) [2..] + >> timeOutMicro 100 (print $ primes ()) + >[2,NonTermination + >> timeOutMicro 10000 (print $ take 10 $ primes ()) + >[2,3,5,7,11,13,17,19,23,29] hunk ./ChasingBottoms.cabal 120 -tested-with: GHC == 7.6.3 +tested-with: GHC == 7.8.4 }