2015-11-21 61 views
0

在下列素篩:哈斯克爾篩素數

primes :: [Integer] 
primes = sieve [2..] 
    where 
    sieve (p:xs) = p : sieve [x|x <- xs, x `mod` p > 0] 

什麼x | x <- xsx `mod` p > 0是什麼意思?

+1

請搜索列表理解。另外,mod是Modulo函數。 –

+0

list-comprehension語法是接近你在數學中使用的set語法的地方 - 所以它意味着*'xs mod' p> 0''中的所有'x'的列表* – Carsten

+0

我建議閱讀http://learnxinyminutes.com/docs/haskell/中的所有語法以快速瀏覽語法。 –

回答