is squeak really object oriented ?

Joshua 'Schwa' Gargus schwa at cc.gatech.edu
Fri May 23 16:22:23 UTC 2003


On Fri, May 23, 2003 at 11:49:19AM +0200, jan ziak wrote:
> On Thu, 22 May 2003 23:19:54 -0400, Joshua 'Schwa' Gargus wrote
> > 
> > I am curious: what do you envision as the non-textual representation
> > of the number 2?  What about 324325435?
> > 
> 
> a non-textual representation of a number two could be simply "two dots on a 
> screen". 

That's natural.

> and a representation of 324325435 can be a visual list of its digits 
> (digits are in the "dot notation"), thus 324325435 can be represented non-
> textually. you can admit that i replaced the notion of a textual digit with 
> the notion of some "dotty" symbols which stand for each textual digit. 

Whoa.  I can't admit that.  I can admit that you replaced one textual
representation of digits with another textual representation.  Are you
really arguing that it would be better to have 9 dotty symbols and a
0-symbol instead of the symbols we are used to, and to compose larger
numbers in exactly the same way with the new symbols?  That seems like
a very difficult position to defend.

(BTW, what is the non-textual representation of zero?)

> but the point is that representing ANY number on a screen in
> non-textual form is indeed possible.

As soon as you are talking about symbols that do not represent a
number itself, but rather digits that must be interpreted together
to find out what the actual number is, you are back to text.  

If you want 1000000 dots to represent the number 1000000, then I
admit that you can represent any number on a screen (subject to
screen and retina resolution limitations).  However, you have not
escaped text in any meaningful way by simply replacing numeric
digits with dotty-symbols.

> i think that we should adopt the opinion that every object can potentially 
> have several representations (as several people in this list have already 
> mentioned) and take this opinion as common knowledge which need not to be 
> mentioned in the list. this is why i did not mention that objects can have 
> several representations - it seems obvious to me.

Ok.  Then what do you mean by working with the object itself, and not
a representation?

> 
> > What does a collection of numbers look like?  What about a 
> > collection of 324325435 numbers?
> > 
> > > --- cut ---
> > > the squeak system answers: "no it wouldn't. you must make a textual 
> > > representation of your object and ...".
> > 
> > Yes, that would be nice.  Maybe someday we'll figure out how to do 
> > it well. If you have some concrete ideas about how to implement such 
> > behavior, I'd love to hear them.
> > 
> > In the mean time, Squeak has the really nice feature that a lot of
> > basic objects such as Points, Arrays, Numbers, Symbols, Strings, and
> > probably more print themselves out in the same syntax as used to
> > create them.  So, if you have an ordered collection in a workspace,
> > you can highlight 'myOrderedCollection asArray', print it to get
> > something like #(1 2 3 4 5 6.66), and cut'n'paste the already
> > highlighted expression into your browser window.
> > 
> 
> in some cases, it is crutial to perform operations with THE object and not 
> with some "conversion" of it.

If you mean that pasting the textual representation of the array into your
code gives you a different array with the same numbers, then I agree.  You
might have an array with non-numeric objects that can't be pasted in this
way.

I'm not sure that this is what you meant, since the distinctions between
the object itself, a representation of the object, and now a "conversion"
of the object are not clear to me.

Would you agree that you can never interact with the object itself, only
with a representation, but that the textual representation is inadequate
for your needs?  That would be a good starting point, one that I can
agree with.

> > Also, as others have mentioned, eToys and MorphicWrappers are worth
> > looking into.  I'm not sure if Self has been mentioned in these
> > threads, but it might be to your liking as well.
> > 
> > > so, are we working with objects or just manipulating text ?
> > > 
> > > giving objects names and them using those names is just one way of how to 
> > > interconnect those objects. i want to work with objects not with their 
> names, 
> > > so why should i give names to objects anyway.
> > 
> > I'm not sure what you mean by 'work with objects not with their
> > names'.  As others have noted elsewhere, not matter whether the 
> > object appears as a textural name, a visual object, or a sound,
> >  they're all just ways of interacting with an object, not the object 
> > itself. Do you mean that you want to interact with visual representations
> > of objects?
> 
> i had textual names on my mind. 
> 
> a position of an object on a screen is in fact its "name" in the context of 
> the screen. i had not such "names" on my mind.
> 

I do not understand your answer.  Could you please restate it?

Joshua

> > 
> > Joshua
> > 
> > > 
> > > jz.
> > >
> 
> 
> 
> 




More information about the Squeak-dev mailing list