[Cuis-dev] [] storeString freezes the image
Gerald Klix
cuis.01 at klix.ch
Tue Oct 27 05:04:45 PDT 2020
On 2020-10-27 03:11, Nicolás Papagna Maldonado via Cuis-dev wrote:
> On Mon, Oct 26, 2020 at 10:58 PM Mariano Montone via Cuis-dev <
> cuis-dev at lists.cuis.st> wrote:
>
>> El 26/10/20 a las 22:41, Nicolás Papagna Maldonado via Cuis-dev escribió:
>>> Hi folks!
>>> Hope you're doing fine :)
>>>
>>> Just found this issue while I was trying to add a new Preference whose
>>> value is a block.
>>
>> I was going to report that same problem. I don't know the solution :)
>>
>>> Specifically, I want users to be able to configure the block that should
>>> be used for opening the class finder (either the default one or
>>> Cuis-Finder).
>>
>> I used a MethodReference as value for the Preference instead of a Block
>> in my implementation, to get around that. Would that be a good option?
>>
>
> Yep, I think that could make it work too!
>
> IMHO if we could make it a block, I think that would be great as it gives
> users the ultimate flexibility.
>
> For this particular scenario, the thing that I have in mind is doing a
> little refactoring to break up the method that creates the preference +
> compiles the accessor into two different methods, so we can add the
> preference without compiling the accessor (we will be providing that
> anyway).
>
> I think the issue is interesting outside Cuis-Finder too, as someone will
> bump into it eventually.
>
>
>>
>> Mariano
>>
>> --
>> Cuis-dev mailing list
>> Cuis-dev at lists.cuis.st
>> https://lists.cuis.st/mailman/listinfo/cuis-dev
>>
>
>
>
That's bad, Actually even `[] storeString` does not terminate. As far as
I can see, the problem
is BlockClosure's outerContext which
causes recursive sends of #storeOn: because
it first instance variable (`sender`. inherited
from InstructionStream) points to itself.
InstructionStream has an interesting class
comment:
"...The unclean re-use of sender to hold the method was to avoid a
trivial subclass for the stand-alone scanning function."
Does it make sense to store instruction streams?
Just my 0.03€
Gerald
More information about the Cuis-dev
mailing list