[squeak-dev] Re: [Pharo-project] Smalltalk vs SmalltalkImage current woes

Igor Stasenko siguctua at gmail.com
Fri Jul 24 11:53:47 UTC 2009


2009/7/24 Klaus D. Witzel <klaus.witzel at 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 at lists.gforge.inria.fr
> http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project



-- 
Best regards,
Igor Stasenko AKA sig.



More information about the Squeak-dev mailing list