[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Scheme-reports] Strong win later reversed: Real numbers have imaginary part #e0
> > R6RS and R7RS-draft-8 require that (eqv? +0.0 -0.0) => #f
> R6RS says eqv? should behave like =.
Actually not. For one thing, 2.0 and 2 have been different in
the sense of `eqv?` ever since R3RS.
But what's relevant here is all that blibberty-blibber in the R6RS
definition of `eqv?` about being indistinguishable by any finite
composition of Scheme's standard arithmetic procedures. In particular,
(/ 0.0) is +inf.0, and (/ -0.0) is -inf.0, so they are obviously
distinguishable, and `eqv?` must not treat them as the same. As long as
your inexact reals are IEEE binaries, you can just distinguish this one
case and then fall back to =.
John Cowan http://www.ccil.org/~cowan <cowan@x>
You tollerday donsk? N. You tolkatiff scowegian? Nn.
You spigotty anglease? Nnn. You phonio saxo? Nnnn.
Clear all so! `Tis a Jute.... (Finnegans Wake 16.5)
Scheme-reports mailing list