[squeak-dev] isKindOf: in Morphic code...
Tobias Pape
Das.Linux at gmx.de
Mon Jul 4 20:59:39 UTC 2016
On 04.07.2016, at 22:44, Eliot Miranda <eliot.miranda at gmail.com> wrote:
> Hi All, Hi Marcel,
>
> when I see code like this, and there's a lot of it in Morphic,
>
> !Flaps class methodsFor: 'testing' stamp: 'mt 5/17/2016 14:17'!
> anyFlapsVisibleIn: aWorld
>
> aWorld submorphsDo: [:m |
> (m isKindOf: FlapTab) ifTrue: [^ true]].
>
> ^ false! !
>
> I think this is performance thrown on the floor (isKindOf: is awfully slow, especially in huge hierarchies like Morphic, and bad design, restricting one to a concrete class). And I think that Morph provides a perfect place to put an extension that doesn't pollute Object. So I would like to see
>
> anyFlapsVisibleIn: aWorld
>
> aWorld submorphsDo:
> [:m| m isFlapTab ifTrue: [^true]].
> ^ false! !
>
> with the emphasis on isFlapTab ;-)
Well, class testing seems to be a Morphic pattern, given #findA: (alias #submorphOfClass:)
Best regards
-Tobias
PS: Not advocating anything just reporting what I found
More information about the Squeak-dev
mailing list
|