2009/7/24 Klaus D. Witzel <klaus.witzel@cobss.com>:
On Fri, 24 Jul 2009 12:39:07 +0200, Igor Stasenko wrote:
2009/7/24 Klaus D. Witzel : ...
So, what i'm proposing: ... then simply: Smalltalk at: #Smalltalk put: (SmalltalkImage current).
This part will not work, check yourself:
 (Smalltalk associationAt: #Smalltalk) inspect
in what way it wont work?
I was responding to a practical issue, not a conceptual one; try
 Smalltalk at: #Smalltalk put: Smalltalk
then you should see why that's not possible.
I don't see how this can be a barrier of any sort for a real hacker: (Smalltalk associationAt: #Smalltalk) becomeForward: (#Smalltalk -> Smalltalk). Smalltalk at: #Smalltalk put: Smalltalk There are numerous ways how to get around this ;) Btw, this is another reason to not expose messages like #associationAt: to users. Alas, associations is used by compiler. :(
I can implement #associationAt: in SmalltalkImage class, to proxy it to globals ivar. What's wrong with it?
With #associationAt: in SmalltalkImage? nothing, if it still makes sense.
Or do you mean, that we will end up with the need of proxying all Collection protocol methods?
Some of them: yes; unless you get rid of "Dictionary" users' view.
There always can be more radical solutions, like proxying rest of stuff through DNU handler :)
:)
/Klaus
_______________________________________________ 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.