>> "SIGOURE" == SIGOURE Benoit
<sigoure.benoit(a)lrde.epita.fr> writes:
+ EvalIf:
+ |[ true ? e1 : e2 ]| -> |[ e1 ]|
+
+ EvalIf:
+ |[ false ? e1 : e2 ]| -> |[ e2 ]|
+
+ EvalIf:
+ |[ d ? e1 : e2 ]| -> |[ e1 ]|
+ where <not(compare(real-eq))>(d, 0)
+
+ EvalIf:
+ |[ d ? e1 : e2 ]| -> |[ e2 ]|
+ where <compare(real-eq)>(d, 0)
How about testing whether e1 and e2 evaluate to the same value?
I guess a previous phase did it already, as for the truth value, so
EvalIf:
|[ d ? e : e ]| -> |[ e ]|