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

Reply via email to