A big teacher wish

Stephan Rudlof sr at evolgo.de
Thu Nov 28 17:09:32 UTC 2002


Jon Hylands wrote:
> On Thu, 28 Nov 2002 09:51:37 +0100, "Hernan Galante"
> <galanteh at smalltalking.net> wrote:
> 
> 
>>Morph	subclass: #BioMorph
>>	objectKnowledge: ' myTarget lastTime ' 
>>	classMembersKnowledge: ' CloseBoxImage '
>>	dictionaryOfVocableKnows: 'Colors '
>>	category: 'Morphic-Samples'!
> 
> 
> Sorry, I'm going to have to agree with Richard here -- instance variable
> names are just that. They are not what the object "knows", they are the
> names of the variables that instances have.

I want to second this.

Richard has explained in great detail, why the current terminology has been
well chosen.
Please read his posts in this thread and try to undermine his arguments.
Hint: it will be hard...

For me even #instanceVariableNames: in *meta* classes (accessible in the
class pane of a browser) are a concept, which is easy to understand: each
instance of the corresponding meta class (the class with its subclasses) has
its own class instance variable (which is then accessible like a class var
in all of *its* instances). This concept highly corresponds to the concept
of instance vars of instances of ordinary classes.
What is difficult to understand here?


Greetings,

Stephan

> 
> In the example above, 'myTarget' is not the name of another object. It is a
> morph's private local name for a reference to that object.
> 
> Smalltalk has variables -- regardless of the fact that they are not
> first-class objects, they still exist. Pretending they don't exist is a
> mistake in my opinion.
> 
> Later,
> Jon
> 
> --------------------------------------------------------------
>    Jon Hylands      Jon at huv.com      http://www.huv.com/jon
> 
>   Project: Micro Seeker (Micro Autonomous Underwater Vehicle)
>            http://www.huv.com
> 
> 


-- 
Stephan Rudlof (sr at evolgo.de)
   "Genius doesn't work on an assembly line basis.
    You can't simply say, 'Today I will be brilliant.'"
    -- Kirk, "The Ultimate Computer", stardate 4731.3




More information about the Squeak-dev mailing list