On Sep 28, 4:34 pm, Phlip <phlip2... / gmail.com> wrote:
> In Ruby, types that can (generally) fit into 32 bits are "immediate
> types". These Fixnums and Floats are pass-by-value. All other types -
> from String up - are pass by reference:

But I don't think this should make any bit of difference to anyone.
Pass-by-value of an 'immediate' object is (nearly) indistinguishable
for pass-by-reference of an immutable object. The only consistent
difference that I can think of is that two literals of the same value
happen to have the same object_id. (And as has been pointed out
recently, there are very few good reasons why you should care about
object_id other than possibly debugging.)