Hallo,
On 9/23/09, Shiro Kawai <[email protected]> wrote:
>
> An interesting approach is taken by a Ruby implementor
> (Koichi Sasada): Taking one tag bit from exponent (instead of
> mantissa) of IEEE double floats. That is, if the exponent is
> within a certain range, IEEE double is represented as an
> immediate value on 64bit architecture. If the exponent is too
> small or too large, it fallbacks to boxed double automatically.
> Empirically, he reported almost all doubles appeared during
> computation fell into the range representable in immediate doubles.
> Same technique may be applicable to represent single floats on
> 32bit architecture.
>
Interesting. I wonder how he did that, because the bits which are
zero in a pointer are the least significant ones, and the exponent of
a IEEE float is in the most significant bits.
--
-alex
http://www.ventonegro.org/
_______________________________________________
r6rs-discuss mailing list
[email protected]
http://lists.r6rs.org/cgi-bin/mailman/listinfo/r6rs-discuss