[KCP] about VM

Daniel Altman daniel at qkss.com
Mon Jun 30 13:13:24 UTC 2003


Hi Martin!

> Stef wrote:
> >For the class side of life, we have one strong opinion about what
> >should be put on class side: class
> >behavior! Using class methods to represent instance behavior is a
> >sick behavior on the long term.
>
> There is no instance behavior if there is maximal one instance! In
> case you don't believe this, here is the proof: you can put all
> methods on the class side. And because of the missing instances there
> is no real class behavior either!
>
> It may be even misleading to create a special class with an artificial
> instance in such a case, the inexperienced code-reader may think that
> there may be different 'vms' 'images' 'systems' etc. SHe may entirely
> miss, that that is no real object at all! ( it is only a
> representation of something outside the OO-system ).

I disagree with you Martin, the distinction between classes and instances
doesn't have anything to do with the number of instances. It is a conceptual
separation involving different abstraction levels, meta levels. The
instances are supposed to represent objects in the domain you are modeling,
while the classes are supposed to describe those objects.



> >I do not understand why having two small classes is not better that a
> >big fat one. Especially because we are trying
> >to create coherent abstractions.
> >
> >About the general purpose, note that we believe that having class
> >with well identified responsibility is the best way to create
> >abstraction. We believe that after others can build on them, enrich
> >them. The process is important. I saw that we creating SpaceTally
> >from spaceTallyOn: and related methods.
>
> What coherent abstractions do you want to create on something like VM,
> which obviously has not even one real instance and therefore no real
> class ( in an OO sense )?

No VM instances you say? And what is that program called Squeak.exe you have
running on your computer?


>
> Stephane, your OO-arguments simply don't work for these special kind
> of methods and 'representation-objects'.
>
> Furthermore I must say, you should not forget that 97% of all Squeak
> users and potential users have no interest in arcane research
> experiments, they expect to have _one_ System and _one_
> SystemNavigator: they prefer to say XYZ doThat instead of XYZ default
> doThat.
>
> Keep it simple.

Simplicity is mainly achieved due to good designs, not by having to write
one less word. The real thing users would prefer is to not have to write
anything but to have a graphical interface (or may be even a voice interface
or something better) to do what they want.


>
> peace and regards,
> Martin
>
>
>
>



--
======================================
Daniel Altman
Buenos Aires, Argentina





More information about the Squeak-dev mailing list