Я хочу написать функцию wp (без простых чисел), которая удаляет все простые числа из списка цифр. Таким образом, wp [1, 2, 3, 4, 5, 6, 7] = [1, 4, 6].Haskell - исключить простые числа из списка
Я попытался кодирования это следующим образом:
wp :: [Int] -> [Int]
prime :: Int -> Bool
prime n = if f n > 0 then False else True
where f n = foldl (\acc x -> if n `mod` x == 0 then acc = acc + 1 else acc = acc + 0) 0 [2..n-1]
wp xs = filter (not.prime) xs
Но при компиляции, я получаю «Ошибка синтаксического анализа на входе =» ошибка, но я не могу найти ошибку синтаксиса. Есть идеи?