[squeak-dev] Why does MessageSet subclass Browser?

Chris Muller asqueaker at gmail.com
Mon Mar 7 21:18:39 UTC 2011

Hi Frank, I don't know if I have a definitive answer to your question
other than; a MessageSet is a "Browser" of messages (err, methods),
and it probably inherits quite a bit of behavior there.

I'm glad you're doing this improvement on the browsers; I hope you are
going "all the way" and letting each of the lists be populated with
first-class objects, like MethodReferences instead of Strings.  I
know, in some cases where formatting or emphasis is required, that
won't be possible, but in most cases it should be.

This is now much easier because the list widgets now send
#asStringOrText to each rendered objects at low-levels (e.g.,
drawing), rather than assuming they are already Strings or Texts way
up in the domain level.


On Sun, Mar 6, 2011 at 3:53 PM, Frank Shearar
<frank.shearar at angband.za.org> wrote:
> In removing Browser's use of indices in favour of using symbols to track
> what a Browser's currently browsing, I found I couldn't add an instvar
> called selectedClass. TimeProfileBrowser uses it.
> TimeProfileBrowser subclasses MessageSet, which we use to model senders-of
> and implementors-of. But why does MessageSet - a model to view a collection
> of methods - subclass Browser, a model used to explore Smalltalk code at
> large?
> I'm thinking "historical accident, because it was cheap/expedient to
> repurpose some chunks of Browser and simply ignore the rest", but I'm
> curious if my guess is right or not.
> frank

More information about the Squeak-dev mailing list