[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Scheme-reports] EQV? on numbers should be based on operational equivalence

Mark H Weaver scripsit:

> That's why I qualified my statement with "on platforms with signed
> zeroes".  All I am advocating is that EQV? be based on operational
> equivalence, i.e. that we mandate (eqv? 0.0 -0.0) => #true if and only
> if 0.0 and -0.0 are operationally equivalent.

I'm inclined to agree where numbers are concerned, but the R3RS language
for procedures is:

    Two procedures are operationally equivalent if, when called on
    operationally equivalent arguments, they return the same value and
    perform the same side effects.

Unfortunately, this definition is itself not operational.  In practice,
closures are EQV? iff they result from the same invocation of LAMBDA,
at least at the REPL.

By Elbereth and Luthien the Fair, you shall     cowan@x
have neither the Ring nor me!  --Frodo          http://www.ccil.org/~cowan

Scheme-reports mailing list