William Djaja Tjokroaminata wrote:
> > Regarding the test suites, is it really that much more complicated than
> the corresponding test suites for FixNum and BigNum?  For a first cut,
> probably we can sacrifice exponent rather than mantissa and have the same
> logic as the conversion between FixNum and BigNum when we have FixFloat
> (31-bit 'float') and BigFloat (pure, native 64-bit 'double').  (People who
> do numerical computations extensively and care about precision should have
> 

I think there is a minor inaccuracy in your considerations:

In the current implementation of Ruby, there are 2**31 possible
noninteger objects and 2**31 possible integers coded by one VALUE.
If a single VALUE is used for storing floats, then you will
have to reserve two bits instead of one for describing
the type of the object : so you will have 30 bit integers and 30 bit 
floats...

Additionally, this would add an extra comparison to each object acces
which would impair the overall performance a bit.

Regards, Christian