Hello, Immutability needs to be implemented in the VM. It is quite some work on the current memory manager. Few people have enough skills to do this kind of changes nicely and efficiently, and none of them had enough time to do it. However, things are now moving quicker and quicker and some work and immutability has started.
Right now part of the VM work is focusing the new memory manager Spur that will be released for Pharo 4. This new memory manager will feature immutability (1 bit in the object header is now reserved for this purpose). However, although immutability is required by some projects and people, it is quite far away on the To Do list right now (firstly, the new memory manager needs to work efficiently, be stable, be in production, ...). Therefore, you may have to wait for Pharo 5 (2 years from now) to have immutability in production. Best, Clement 2014-05-04 8:40 GMT-07:00 Aaron Rosenzweig <[email protected]>: > Hello, > > Why is the concept of “immutability” special to VisualWorks? Is it > something hard to add to other Smalltalk dialects such as Pharo or are > there other reasons for not having it? > > When I read the docs for the GOODS database client it says the following: > > “The GOODS client uses this immutability support for change detection.” > > It goes on to say that this is only for VisualWorks. For Pharo it says > that it is generally slow to commit changes because the client to the OODB > has to spent extra time detecting change detection. I guess for VisualWorks > it is basically “free” to detect a change in an object. > > Thank you,*Aaron Rosenzweig* / Chat 'n Bike <http://www.chatnbike.com> > *e:* [email protected] *t:* (301) 956-2319 [image: Chat 'n Bike] > [image: > Chat 'n Bike] > >
