2009/7/24 Klaus D. Witzel <[email protected]>: > 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 > [email protected] > http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project -- Best regards, Igor Stasenko AKA sig. _______________________________________________ Pharo-project mailing list [email protected] http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
