On 27 February 2010 19:21, Stéphane Ducasse <stephane.ducasse@inria.fr> wrote:
My point is still valid
Igor now one of the problem is see with the possible to add and access slot everywhere is illustrated by morphic code when a method add a property extension to a morph, another tests for its value and the third one remove it. You get code that is really difficult to understand.
You mean that morphs could add arbitrary slots to its instances?
yes look at addProperty and friends
Why difficult?
Apparently you never tried to understand morphic code. Try in Squeak 3.9 not pharo because we removed a lot of problem already
I took a look. And addProperty & morphic-extensions is obviously not best pieces of code. The things is, that most of these properties usually set up only once on widget init and never touched during lifetime of morph. The possibility to remove the property from morph is cool, but used seldom. So, actually this means, that morphs could be built using a composition of dynamic and static properties - styles, and all you need is to pick a morph and apply style to it. And no need to support dozens of properties as an additional state on a per-morph basis.
This extension is to match the object format of Self and JavaScript.
Why do we need that? When do you need that? Why an instance should have a dictionary based access? How this is integrate with our tools?
Why a good mop does not let you do that :)
Maybe because its not good enough?
We will be working on that
I asked but this is several years that I think that under specific circumstances it would make sense to have
Object dictionaryVariableSubclass:
but not just to look like self or javascript.
Stef
_______________________________________________ Pharo-project mailing list Pharo-project@lists.gforge.inria.fr http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
-- Best regards, Igor Stasenko AKA sig.