On Sat, 15 Jan 2005 00:04:39 +0900, Mystifier
<mystifier / users.berlios.de> wrote:
> Immutability as I understand is preserving state of the Object.
> State of Object are instance variables in Ruby. My example does
> sot change class variables, but the instance variable. Symbol
> class being immutable or not is besides the point. I am talking
> about symbol instance, and ability to change symbol instance
> variables makes them not immutable as such. Yes, the sequence of
> chars they represent are immutable. Hence, I get an impression
> that the Symbol is a immutable string class.

Yes. The intrinsic value of a symbol is immutable -- and it doesn't
have support for virtual classes; the fact that it's an Object like
everything else, though, says that it can have additional methods or
even instance variables added at any time.

> About learning things before writing VM, I am sure I have to. What
> I feel No VM or Interpreter can exists with reasonable performance
> with have an immutable string class. It is altogether a different
> matter what you call them.

And I think that the existence of Ruby -- which is quite performant
for a lot of people -- suggests otherwise.

-austin
-- 
Austin Ziegler * halostatue / gmail.com
               * Alternate: austin / halostatue.ca