gotoken / math.sci.hokudai.ac.jp (GOTO Kentaro) writes:

> In message "[ruby-talk:01398] Bignum aset"
>     on 00/02/15, Andrew Hunt <Andy / Toolshed.Com> writes:
> 
> >In class Bignum, there is a very handy method for bit reference ([]).
> >But there is no corresponding bit setter ([]=).
> >
> >Is this deliberate?  I need an abritrarily large pile of bits to set and
> >test, and this seems like the right place to do it.  Should I be using
> >some different class instead?
> 
> Yes, I heard it is deliberate.  An instance of Numeric is a unique
> object corresponding to a numeric. And, []= is usually a destructive
> method.

     a = 2**100
     b = 2**100
     p a
     p b
     p a.id
     p b.id
     1267650600228229401496703205376
     1267650600228229401496703205376
     537680696
     537680476


I thought that only Fixnums were immediate.


> Now, for example, imagine what happens by `2[0] = 1'.  Will 2 be 3?

Won't happen with Fixnums, but it seems OK to be able to do it with
Bignums.


Regards

Dave