On Sat 29 Jan 2011 21:20, Mark H Weaver <[email protected]> writes: > Andy Wingo <[email protected]> writes: >>> if (SCM_CELL_TYPE (x) != SCM_CELL_TYPE (y)) >>> + return SCM_BOOL_F; >> >> Doesn't this prevent 1.0+0.0i from being eqv or equal to 1.0 ? > > No, because 1.0+0.0i never exists in the current code.
Ah, so we don't have any back-compatibility to preserve here; cool. > it follows that any complex number, even one with an inexact zero > imaginary part, must be unequal to _any_ real number. I can't presume to have a deep understanding of math, but I do interpret the R6RS as supporting your arguments, so no problem. Thanks for humoring me with an explanation :) Cheers, Andy -- http://wingolog.org/
