Простой тест Haskell

Я новичок в Haskell и немного пытаюсь:

isPrime :: Integer->Bool
isPrime x = ([] == [y | y<-[2..floor (sqrt x)], mod x y == 0])

У меня есть несколько вопросов.

  1. Почему, когда я пытаюсь загрузить .hs, WinHugs говорят: Экземпляры (Floating Integer, RealFrac Integer) , необходимые для определения isPrime ?
  2. Когда интерпретатор находит один элемент в правильном наборе, он немедленно останавливается или он все вычисляет набор? Думаю, вы понимаете, о чем я.

Извините за мой английский.

8
задан sepp2k 27 December 2010 в 20:04
поделиться