> On 6 Sep 2018, at 23:35, Petr Fischer via Pharo-users 
> <pharo-users@lists.pharo.org> wrote:
> 
> 
> From: Petr Fischer <petr.fisc...@me.com>
> Subject: adding instance variables (data) to the Object class
> Date: 6 September 2018 at 23:35:26 CEST
> To: pharo-users@lists.pharo.org
> 
> 
> Hello! Weird question: why I can't add instance variables to the Object class 
> (for example "oid" or something else)? Is it due to some internal (and 
> different) VM "class layouts"?
> 
> Or - can I inject my own information to all existing objects (any class)?
> 

Behavior is a subclass of Object, too. So that means that you would add a ivar 
to all the classes, but for the VM an object can only be a class that has three 
ivars, and those
are accessed by offset. So if you add an ivar, you shift the offset —> problem.

As for “I want to add object specific state”: it would be nice to add an easy 
to use (and efficient) mechanism to do it.

        Marcus

Reply via email to