>>100 をHaskellで書いてみた。定義に忠実に。

list = [2..1000]
sosu = filter isSosu list
isSosu x = and (map not (map (canDiv x) [2..x-1]))
canDiv x y = if x `mod` y == 0 then True else False

[1..1000]だと1も出力されてしまうのでちょっとズル。