-- What is the 10 001st prime number? primes :: [Int] primes = let go (p:ps) = p : go [ n | n <- ps, n `mod` p /= 0 ] in go [2..] main = print $ primes !! 10000