[Newbies] Re: anObject select: #aMethodName -- is this good Squeak?

Klaus D. Witzel klaus.witzel at cobss.com
Thu Feb 8 10:37:02 UTC 2007


On Thu, 08 Feb 2007 10:21:53 +0100, Giovanni Corriga wrote:

> Il giorno gio, 08/02/2007 alle 07.53 +0100, Lukas Renggli ha scritto:
>> > That was one of the things that I originally thought would weigh
>> > against this idiom, but found to my surprise that "Senders of"
>> > identified these references correctly-- I'd previously found symbols
>> > being included in my results and wondered why, but it looks as though
>> > someone was aware of this gotcha.
>>
>> Yes, browsing senders also works. Squeak puts all the data needed by a
>> compiled method into a special place called literal array. So all
>> selectors you send (expect special ones like #ifTrue:, #ifFalse:,
>> #and:, #or, #whileTrue, ...) are in there, all symbols you use, all
>> classes you reference, all strings and numbers. If you browse for
>> senders, the system just looks at this literal array and doesn't make
>> the difference if this is just a symbol or an actual selector of a
>> message send.
>
> Does it? I tried browsing for senders on a 3.9 image before sending my
> message, and it didn't work.

What was that symbol (for reproduction)?

FWIW in #thoroughWhichSelectorsReferTo:special:byte: it is sought for  
#allButLast of the method's literals. This can be a problem if the method  
wasn't (re-)created after the image was traitified.

Also, SystemNavigation>>#allCallsOn: is influenced by (Preferences  
thoroughSenders).

/Klaus

> 	Giovanni




More information about the Beginners mailing list