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

Re: [Scheme-reports] Formal Objection: Memoization is not possible in portable R7RS

On Mon, Nov 26, 2012 at 9:53 AM, Per Bothner <per@x> wrote:
On 11/25/2012 04:07 PM, Mark H Weaver wrote:
> * Significant change: Fix the NaN problem by making sure that
>    two numbers can only be /substantially different/ if at
>    least one of them is numerically equal to itself.

IMO this does the wrong thing if you have two different NaN values,
as allowed by IEEE.  Neither is numerically equal to itself,
but they have different bit-patterns, and eqv? should compare
them as false.

The WG decided to make eqv? unspecified for NaNs
independently of the eqv? semantics.  Unless you are
doing so now, no member of the community has made
any objection to this decision.

We have no basis for re-opening the ticket regarding
NaNs, and changing it now would only break R5RS and
R6RS compatibility while alienating many members of
the community.  Even discussing it would likely take
valuable time away from the issue many people actually
are unhappy with, the (non-NaN) semantics of eqv?.

This is not to dismiss NaNs or say they are unimportant,
but that it is no longer useful to discuss the matter for
R7 small.  People who are interested in this should take
it up in future standards.

Regarding the general eqv? case, a private polling of the
WG members has so far shown that while every member
seems to want a re-vote, not a single member is interested
in changing his vote.  However, some members are flexible
about small variations within their broad semantics.  So I'm
going to re-open this ticket in a 9th ballot in the hopes that
we can at least get a same-bits variation that makes people


Scheme-reports mailing list