[squeak-dev] References to a removed and reloaded class
leves at elte.hu
Sat Sep 22 00:57:34 UTC 2012
On Fri, 21 Sep 2012, Colin Putney wrote:
> Levente wrote:
>>> Some code uses #at:put: only, others try #includesKey: and #at:ifAbsent:
>>> which might not work as expected (see above).
> Eliot responded:
>> OK, then fix the code. at:put: seems right. at:ifAbsentPut: will create
>> the wring kinds of bindings right?
> I ran into this too. I'd like to fix the code by creating a new
> protocol for dealing with bindings explicitly. Environment would
> implement this protocol, and client code will use the new protocol
> rather than manipulating dictionaries directly. So #at:put: would
> become #bind:to: and so forth, with only a limited subset of the
> functionality that dictionaries provide. Then we can add messages for
> higher-level operations like removing or renaming classes.
Right, that's how it should be done.
More information about the Squeak-dev