Hi Matz,

If you are still considering to use '@_var' or '@__var' to create class
private/local variables, are you open to the idea of simply making all
instance variables private?  The descendant classes then can access the
instance variables using 'self.var', where the method 'var' can either be
public or protected.

The reason I ask is because it seems that you are considering things like
'abc[0]' which will return the "char" instead of the "fixnum" in 1.9,
which may break a lot of codes.  So although currently making all instance
variables private will also break a lot of codes, probably the
"transition" can be handled in the same way as the behavior change of
'abc[0]'.  But first of course I want to know whether you think making all
instance variables private is a good idea in the first place (ignoring
the backward compatibility issue for now), especially from the
object-oriented data hiding point of view, and in particular for doing
large-scale software development.

Regards,

Bill
============================================================================
Hi,

In message "Re: Thoughts on Ruby"
    on 02/11/03, "Gavin Sinclair" <gsinclair / soyabean.com.au> writes:

(regarding the fact "abc"[0] being fixnum)

|It's probably not intuitive to *anybody* (except perhaps Matz).  However,
I see
|no particular justification for it being any other way, and in fact it's
|changing in 1.7 isn't it?  Anyway, my point is: you'll never forget it
now.
|And if you're like me, you won't care either.

It will in 1.9 or later.

							matz.