[squeak-dev] Re: dynamic state?
andreas.raab at gmx.de
Wed Mar 24 04:03:37 UTC 2010
On 3/23/2010 10:56 AM, Igor Stasenko wrote:
> On 23 March 2010 19:16, Andreas Raab<andreas.raab at gmx.de> wrote:
>> It's an interesting thought, but I'll make a few observations: First, the
>> usage with traits seems odd. For traits you have an explicit composition
>> step already, the step can compute required state and add that to the class
>> in question. So the original motivation is a bit off.
> About traits, it was just an example, how new object format could be
> used in combination with them.
Right, except that it makes little sense since traits are static
compositions as far as the objects are concerned. Consequently anything
you could dynamically could be done statically during the composition
step. But anyways, this isn't about traits.
>> And of course, if you don't have high performance requirements, you could
>> use just a single bit to indicate that the object has additional properties
>> and use the properties dictionary to store all additional state.
> if by 'properties dictionary' you mean storing it in an extra object -
> then it is different to what i proposed.
Yes, and yes. My point is that in a *lot* of situations you can achieve
the desired effect with a single extra bit in the object header if
you're willing to pay the price in performance. Given that most uses
aren't going to be performance critical, that seems like a more
reasonable step for incremental improvement than rewriting the entire
object model :-)
> a set of named slots.
Or to Python which has both named variables and __slots__
More information about the Squeak-dev