All pastes #2520 Raw Edit

haskell code

public text v1 · immutable
#2520 ·published 2004-12-01 07:06 UTC
rendered paste body
sieve :: Int -> [Int]
sieve n = helper False:(duplicate (n - 1) True)
    where helper l =
        let prime = findFirstTrue l
        in
            if prime > 0 then
                prime:(helper (clearMultiples prime l))
            else
                []

{-
Error in hugs is:
ERROR "test.hs":60 - Syntax error in expression (unexpected `}', possibly due to bad layout)
-}