So habe ich die folgende Funktion ausgedacht für zu sehen, ob eine gegebene Zahl eine Primzahl in Haskell (es nimmt die erste Primzahl 2): Ermitteln, ob eine gegebene Zahl eine Primzahl in Haskell ist
isPrime k = length [ x | x <- [2..k], k `mod` x == 0)] == 1
hat die offensichtliche Gefahr der Bewertung der fort auch wenn es durch mehrere Zahlen teilbar ist :(. gibt es eine sane Art und Weise von „Schneiden“ der Auswertung, wenn es mehr als eine Lösung findet, Listenkomprehensionen mit?
auch die andere Implementierungen würden Sie versuchen? Ich bin nicht auf der Suche nach Leistung hier, ich versuche nur zu sehen, ob dort sind andere "haskellische" Arten, dasselbe zu tun.
mögliche Duplikat [Lazy List of Prime Num bers] (http://stackoverflow.com/questions/3596502/lazy-list-of-prime-numbers) – Landei