Senders, Implementors browser - how about a "Sendees" browser?
itsme213 at hotmail.com
Thu Jan 10 19:03:05 UTC 2008
"tim Rowledge" <tim at rowledge.org> wrote in message
news:4CC42523-B449-4545-8D12-89668B7D6352 at rowledge.org...
> On 10-Jan-08, at 10:05 AM, itsme213 wrote:
>> Type-inferences must make heavy use of this view, so why not me??
> Types? What are these 'types' of which you write? This is Smalltalk; we
> don't do types.
Don't let the word 'Type-inference' or 'TypedBrowser' put you off. Just
think 'Collaboration', as in CRC.
If you look over the description, you will notice that these are not static
types. They are just groupings of message sends per inst-Var, pseudo-var,
etc. as are known 100% correctly to Squeak. They are not classes, groups of
classes, or even message categories.
This is my class C.
I implement: #(foo, bar, baz, fooSub)
My instances collaborate by sending:
#(m1, m2) to my collaborators via instVarA
#(m1, m5) to my collaborators via instVarB
#(initialize) to [self via] super
#(fooSub) to self
#(classFoo) to my class C
#(x1, x2, x3, ....) to others via dynamic method params
And within each of my methods #(foo, bar, baz, fooSub)
here is C>>each method's narrower collaboration ...
Do you think many ST programmers design and think in these terms? I know I
do. I think I would benefit *greatly* from seeing this view on both my own
classes, and from others' packages I want to use.
More information about the Squeak-dev