[squeak-dev] MethodDictionary >> #select: not working

Marcel Taeumel marcel.taeumel at hpi.de
Tue Sep 21 08:06:54 UTC 2021


Hi all --

I just moved Kernel-eem.1415 from Trunk to Inbox because it breaks the update stream due to missing checkpoints in the update map.

I am in favor of Levente's fix (i.e., Kernel-ul.1415) because it does not need any checkpoints but directly loads into Trunk.

Best,
Marcel
Am 21.09.2021 01:31:50 schrieb Thiede, Christoph <christoph.thiede at student.hpi.uni-potsdam.de>:
Ha! Can't assess which implementation is better, but the bugfix time was fantastic! :-)

Best,
Christoph
Von: Squeak-dev <squeak-dev-bounces at lists.squeakfoundation.org> im Auftrag von Eliot Miranda <eliot.miranda at gmail.com>
Gesendet: Dienstag, 21. September 2021 00:42:25
An: The general-purpose Squeak developers list
Betreff: Re: [squeak-dev] MethodDictionary >> #select: not working
 
Hi Levente, Hi Christoph,


On Mon, Sep 20, 2021 at 3:26 PM Levente Uzonyi <leves at caesar.elte.hu [mailto:leves at caesar.elte.hu]> wrote:

Hi Christoph,

On Mon, 20 Sep 2021, christoph.thiede at student.hpi.uni-potsdam.de [mailto:christoph.thiede at student.hpi.uni-potsdam.de] wrote:

> Hi there.
>
> I think I found a bug in MethodDictionary. Try this:
>
>     UIManager methodDict select: [:ea | ea selector beginsWith: 'chooseFrom']
>
> Expected: A dictionary (I don't care which specialization) that I can enumerate to retrieve ca. 10 selectors.
> Actual result: Answer looks empty in the inspector and in the print string; however, the array is not empty. The invariant mentioned in the class comment ((self basicAt: index) isNil = (array at: index) isNil) is violated.
>
> Maybe any of our Collections experts feels like looking into this - for now, I'm going to convert the dictionary before filtering it. :-)

The implementation of #add: inherited from Dictionary is no sufficient for
MethodDictionary.
See Kernel-ul.1415 in the Inbox with the proposed fix for your case and
some other methods.


Also see Kernel-eem.1415.  I didn't see your fix Levente before I had a go.  I'm happy which ever gets chosen.
Levente


_,,,^..^,,,_

best, Eliot
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.squeakfoundation.org/pipermail/squeak-dev/attachments/20210921/176d2986/attachment.html>


More information about the Squeak-dev mailing list