Dear Ruby-friends,

Is there a way to control (turn off) the Ruby interpreter's way of
transforming a FixNum to a BigNum when approaching the machine word limit?

Why is 0x40000000 the FixNum-BigNum limit and not 0x100000000? (32 bit
architecture)

Most of the time it's really neat to have the interpreter doing the
transition automagically but I have a couple of algorithms that heavily
make use of 32 bit unsigned integers (uint32) and it'd be a pain to have
to use modulo all over the place.

Any suggestions for an easy (and effecient?!) way to work with uint32's in
Ruby?

Transition example (Pentium PC, Windows NT, Cygwin 1.1.1, Ruby 1.4.4):
----------------------------------------------------------------------
BASH.EXE-2.04$ ruby eval.rb
ruby> 0x3fffffff.type == 0x40000000.type
false
ruby> 0x3fffffff.type
Fixnum
ruby> 0x40000000.type
Bignum
ruby>
----------------------------------------------------------------------

Regards,

Robert
feldt / ce.chalmers.se