[plt-dev] Inexact integers

From: Michael Sperber (sperber at deinprogramm.de)
Date: Tue May 25 12:27:57 EDT 2010

Sam Tobin-Hochstadt <samth at ccs.neu.edu> writes:

> On Tue, May 25, 2010 at 12:31 AM, Michael Sperber
> <sperber at deinprogramm.de> wrote:
>>
>> Well, but the decision to have (integer? -17.0) => #t is rooted in the
>> design of the numerical tower.  In particular, I would think it has
>> implications for:
>>
>> (= -17.0 -17) => ?
>> (rational? -17.0) => ?
>
> I don't see why. For example: [...]

Then you should be able to fill in those question marks, and not answers
to questions you invented yourself :-)  

For example, if (rational?  -17.0) => #t (as it currently is), you would
get a rational number with non-integral numerator and denominator.  I'm
not saying you couldn't do it, but the resulting numeric tower would be
even weirder (and weirder in a bad way) than it currently is.

> Right now, all real? numbers are rational, 

No:

(real? +inf.0) => #t
(rational? +inf.0) => #f

> and all inexact numbers k are `=' to (inexact->exact k).  I don't see
> what that has to do with integers in particular.

Doesn't it strike you as strange that an integer compared to a
non-integer may compare as =?

-- 
Cheers =8-} Mike
Friede, Völkerverständigung und überhaupt blabla


Posted on the dev mailing list.