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

Re: [Scheme-reports] multiple NaN values

 | Date: Mon, 20 Feb 2012 11:12:07 -0800
 | From: Per Bothner <per@x>
 | On 02/20/2012 09:12 AM, Aubrey Jaffer wrote:
 | >
 | > EQ? is allowed to distinguish different NaN values.  It is better
 | > to let EQ? make this distinction than EQV?.
 | EQ? can distinguish the "same" values as being different:
 |     (eq? 2.0 2.0) => unspecified.
 | Thus it is uninteresting in this context.

You proposed distinguished NaNs as an optional feature, not a required
one.  Allowing EQV? to distinguish NaNs weakens its portable contract.
EQ? already is allowed to distinguish NaNs, so its contract need not
be changed.  An implementation wanting to have distinguishable NaNs
just makes its EQ? reflexive, which is also allowed by R7RS.

Scheme-reports mailing list