John Cowan <co...@mercury.ccil.org> writes:

> The R7RS-large committee is trying to sort out what R6RS Section 3.4
> means by its first two sentences:
>
>     Implementations of Scheme must support number objects for
>     the entire tower of subtypes given in section 3.1. Moreover,
>     implementations must support exact integer objects and exact
>     rational number objects of practically unlimited size and
>     precision, and to implement certain procedures (listed in 11.7.1)
>     so they always return exact results when given exact arguments.
>
> Does this mean that implementations may arbitrarily restrict the ranges
> of non-real numbers?  All the procedures mentioned in 11.7.1 are closed
> over the real numbers (except for division by zero), so they cannot
> force the existence of non-real numbers.

As far as I can see, the paragraph does not say anything about non-real
numbers.  Also, I don't know what you mean by "arbitrarily".  An
implementation is certainly free to restrict the ranges of non-real
numbers, however.  For example, complex numbers with flonum parts were
(intended to be) within what the report says.

> 3.4 explicitly says "Implementations may support only a limited range
> of inexact number objects of any type, subject to the requirements of
> this section."  That would seem to bless having exact (or some exact)
> but not inexact non-real numbers.

Could you parenthesize this?  I assume you mean "bless having (exact (or
some exact) but not inexact non-real numbers)".  Since R6RS explicitly
describes a tower, every inexact real is also a complex number, so I
think the answer is no.

-- 
Regards,
Mike

_______________________________________________
r6rs-discuss mailing list
r6rs-discuss@lists.r6rs.org
http://lists.r6rs.org/cgi-bin/mailman/listinfo/r6rs-discuss

Reply via email to