here is the working code for comparison:
-- Checks whether or not a given Integer is prime
prime:: Integer -> Integer
prime x = if ((x==0)||(x==1)||(x==2)) then error "NUMBER IS PRIME"
else
if x<0 then prime (0-(-x))
else prime_helper x 2
-- Used within 'prime' to determine if a number is prime or not
prime_helper:: Integer -> Integer -> Integer
prime_helper x y =
if ((rem) x y)==0 then error "NUMBER IS NOT PRIME"
else
if x==(y+1) then error "NUMBER IS PRIME"
else prime_helper x (y+1)
----- Original Message -----
From: "ion"
Hug's crashes when I try to use the 'prime' function defined below, note that the function calls prime_helper and this is the likely cause of the crash, also note that the reason for the crash is probable error in the function definition. This is on Windows 2000, is there a fix for this (apart from, "don't use windows" ;)) as otherwise the tool is unusable?
ion
-- Checks whether or not a given Integer is prime prime:: Integer -> Integer prime x = if x==0 then error "x = 0" else if x<0 then prime (0-(-x)) else prime_helper x 2
-- Used within 'prime' to determine if a number is prime or not prime_helper:: Integer -> Integer -> Integer prime_helper x y = if ((rem) x y)==0 then error "NUMBER IS NOT PRIME" else if x==y-1 then error "NUMBER IS PRIME" else prime_helper x y+1
participants (1)
-
ion