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

Re: Error objects in general

Paul Schlie scripsit:

> Overall the question is: if NaN's (aka <indeterminate>/<void> values) are
> to be embraced, should their observable effect be more generally defined
> throughout the entire language specification? (As otherwise the ambiguities
> they represent may either be obscured by subsequent evaluations, or result
> in potentially undesirable non-easily foreseen halting errors?)
> [or alternatively should all arithmetic operations always return well
> specified deterministic numeric values, thereby eliminating the otherwise
> necessity for a <indeterminate>/<void>/<nan> value object?]

This is the fallacy of false dichotomy.  All flonum arithmetic operations
do always return well-specified deterministic values; however, some of them
are not numbers.  What's more, this is what all Scheme implementations on
non-ancient hardware provide in practice.  A NaN is not an indeterminate
value; it is a determinate non-numeric value, disjoint from all other
Scheme values.

Using RELAX NG compact syntax to        John Cowan
develop schemas is one of the simple    http://www.reutershealth.com
pleasures in life....                   http://www.ccil.org/~cowan
        --Jeni Tennison                 <jcowan@xxxxxxxxxxxxxxxxx>