[etoys-dev] Slots without watchers

K. K. Subramaniam subbukk at gmail.com
Tue Sep 29 01:29:47 EDT 2009


On Tuesday 29 Sep 2009 6:10:07 am Ricardo Moran wrote:
> On Mon, Sep 28, 2009 at 8:17 PM, K. K. Subramaniam <subbukk at gmail.com>wrote:
> > I expect watchers are only for variables/properties.
>
> I'm sorry but I disagree. I expect watchers for anything that will return a
> value.
> When I ask for the distance to an object I care about the value, so I
> expect to have a watcher. When I ask an object to turn 90 degrees I only
> care about the movement of the object, so I don't expect to have a watcher.
That may be your expectation. I am only speculating on the designer's 
intention.
> > With computations, one is
> > not sure about side effects.
>
> I also don't think any of the functions I mentioned above should have side
> effects, so the only reason I found for not having readouts is performance.
Etoys is a prototype-based environment built in Squeak. I am speculating about 
designer's intention about readouts based on my reading of the code.

> > There is a bigger issue that will confuse young kids. The viewer has
> > three types of slots - commands, variables and computations but they map
> > to only two
> > types of menu buttons. The "observation" category also includes variables
> > with
> > watchers, so not all relationships are computed :-(.
>
> Maybe I'm wrong but I don't make the distinctions you made (and I don't
> think children do it either). When I work with Etoys I think about
> variables and commands. Nothing more. Clearly, "turn" is a command. And the
> distance to an object, at least for me, is a variable.
In Etoys, "variables" are passive containers of values with getters and 
setters, nothing more. It is true that functions computed on the state of a 
Etoy can yield varying values but the code seems to treat such computations 
differently.

Let us wait for Scott Wallace or one of his "water-cooler" mates to post a 
response,
Subbu


More information about the etoys-dev mailing list