I'm using arc version 3.1 on mzscheme 4.2.5. This example works properly: arc> (def f (x) (if (> x 0) 1 (< x 0) -1 0))
arc> (list (f 1) (f 0) (f -1))
(1 0 -1)
But if we change conditions a bit it doesn't work anymore, or maybe I'm missing something: arc> (def f (x) (if (= x 0) 0 (< x 0) -1 1))
arc> (list (f 1) (f 0) (f -1))
(0 0 0)
|