[squeak-dev] The Trunk: System-cmm.582.mcz

Frank Shearar frank.shearar at gmail.com
Thu Aug 8 08:14:23 UTC 2013


On 7 August 2013 23:00,  <commits at source.squeak.org> wrote:
> Chris Muller uploaded a new version of System to project The Trunk:
> http://source.squeak.org/trunk/System-cmm.582.mcz
>
> ==================== Summary ====================
>
> Name: System-cmm.582
> Author: cmm
> Time: 7 August 2013, 5:00:42.385 pm
> UUID: 57938f0c-ead3-4dba-9155-0812c9c1b7d7
> Ancestors: System-fbs.581
>
> - Fix #thoroughSenders preference.
> - SpaceTally items print your spaceForIntances tersely to be more easily readable.
>
> =============== Diff against System-fbs.581 ===============

The change looks fine. I wonder why the diff is so very noisy, though.
It looks like almost all the Preferences changes are whitespace
changes? Tabs to spaces, maybe?

> Item was changed:
>   ----- Method: Behavior>>allCallsOn (in category '*System-Support') -----
>   allCallsOn
>         "Answer a SortedCollection of all the methods that refer to me by name or as part of an association in a global dict."
> -
>         | theClass |
>         theClass := self theNonMetaClass.
> +       ^ (self systemNavigation allCallsOn: (self environment bindingOf: theClass name)) ,
> +               (Preferences thoroughSenders
> +                       ifTrue: [ self systemNavigation allCallsOn: theClass name ]
> +                       ifFalse: [ OrderedCollection new ]) ,
> +               (self systemNavigation allClasses
> +                       select:
> +                               [ : c | c sharedPools includes: theClass ]
> +                       thenCollect:
> +                               [ : c | ClassReference new
> +                                       setClassSymbol: c name
> +                                       classIsMeta: false
> +                                       stringVersion: c name ])!

I don't know how many things use #thoroughSenders. If it's mainly a
SystemNavigation thing I'd like to see it turned into a pragma
preference.

Given that almost all the action in this method involves sending
messages to self systemNavigation, The method looks like it wants to
move to SystemNavigation, in other words.

With these two things, we'd see the Preferences conditional above
looking like this:

    blah blah ,
        (self class thoroughSenders
            ifTrue: [ self allCallsOn: theClass name ]
            ifFalse: [ OrderedCollection new ]) ,
        blah blah

frank


More information about the Squeak-dev mailing list