Hi guys!
"Peter van Rooijen" squeak@vanrooijen.com wrote: [SNIP]
Tim, I understand your example and I don't disagree that there is a potential for confusion. But this is just how Smalltalk is constructed. Classes are namespaces for their descendents. That Squeak hasn't correctly implemented this part of what Smalltalk is, does nothing to change this.
First of all - I am on Tim's side on this. I find shadowing to be a "shady business" altogether for all reasons stated. :-) Then, exactly what different kinds of shadowing we have/allow, what you can control as an author, when and how the system should warn/barf/shout etc - that is a different story. Don't intend to go there.
BUT... (finally getting to my *only* point of this post) the above text clearly shows what I consider to be two different views on what Squeak is/should be.
I think Tim views Squeak as a Smalltalk-derivative that, even though it currently is very "Smalltalk compliant", not at all *needs* to be and probably will evolve more and more away from the ANSI Smalltalk standard (this is by definition since the ANSI standard is staying put).
I may of course be wrong in this and I rely on Tim in that case telling me in his own special way. :-)
Now - this is *my* opinion:
Squeak is currently very close to Smalltalk-80 and the ANSI standard. But that is not the goal. IMHO Smalltalk is a very good language/environment - but it is after all a *dead* language if we look at the ANSI standard - it is not evolving. Of course Smalltalk compatibility is a good thing, but IMHO *only* when it doesn't hinder us from evolving Squeak into the future.
And I actually think Alan agrees on this too.
regards, Göran