https://forum.world.st/Working-with-weak-announcements-tp3305802p3307097.html
I started to refactor all usages of on:do: and when:do: into on:send:to: in the core of Glamour. I am almost finished.
Now the only question is if we want to distinguish between WeakAnnouncer and Announcer. Is there a performance penalty or another kind of drawback in merging the two and use the WeakAnnouncer implementation only?
The other thing is that we need to add on:send:to:with: and on:send:to:withAll: because we need to handle extra parameters (given that we cannot access local variables).
> Well... not exactly, still something to do: the weak associations on weakannouncer are getting a lot of pairs #selector->nil and we need to think in a way to clean this. But this is doable :)
> In other order of things, I think we should explicitly forbid the use of #on:do: and #when:do: until the fix for blocks is ready.
>
> Cheers,
> Esteban
>
> El 14/02/2011, a las 6:55p.m., Tudor Girba escribió:
>
>> Aha. Thanks a lot. Ok, let's do that. Is it true that the Lukas' Announcements already provide the support for on:send:to: ?
>>
>> Cheers,
>> Doru
>>
>>
>> On 14 Feb 2011, at 22:04, Esteban Lorenzano wrote:
>>
>>> Hi,
>>> Well, this means, in the mean time, if we want to solve our issue 492 using weak announcements, we need to replace all #on:do: calls for #on:send:to:
>>> :(
>>>
>>> Cheers,
>>> Esteban
>>>
>>> Inicio del mensaje reenviado:
>>>
>>>> De: Stéphane Ducasse <
[hidden email]>
>>>> Fecha: 14 de febrero de 2011 17:57:07 GMT-03:00
>>>> Para:
[hidden email]
>>>> Asunto: Re: [Pharo-project] Working with weak announcements...
>>>> Responder a:
[hidden email]
>>>>
>>>> good question :)
>>>>
>>>> On FHi,
>>>>> I'm working with weak announcements,
>>>>
>>>> good we need that.
>>>> Igor was telling me that the right anwser are ephemerons (but for that: gc change is required).
>>>> Now it would be good to have first a solution at image level
>>>>
>>>>> trying to make it work, and I have a problem in #on:do: protocol (or #when:do:)
>>>>> I try to explain:
>>>>>
>>>>> This method receives a block, not an object/selector, so I can't create a WeakMessageSend which is the appropriate message to handle in other cases.
>>>>> Well, the real question is... how can I produce a "Weak BlockClosure reference" who can die if receiver dies?
>>>>> I tried some hacks (really ugly hacks, btw), but fail completely.
>>>>> Any idea?
>>>>>
>>>>> best,
>>>>> Esteban
>>>>
>>>>
>>>
>>
>> --
>> www.tudorgirba.com
>>
>> "Problem solving efficiency grows with the abstractness level of problem understanding."
>>
>>
>>
>