[self-interest] text and gui

Jecel Assumpcao Jr jecel at merlintec.com
Mon Mar 15 19:21:23 UTC 2004

On Saturday 13 March 2004 15:12, Albertina Lourenci wrote:
> Is the main difference between syntax for  literal and graphical
> objects that the latter is interactive?

The main difference is that, in existing systems, they are used in 
different places. The graphical object normally (but not always) is 
interactive while we don't think of the textual syntax as such.

Let us imagine we want to have architectural objects in a Self-like 
language. One such object is a wall, and we could invent a special 
syntax for it so we could write

 w1: <.5,0>=<0,0>=<0,7>=<7,7>=<7,6.5>

to describe a wall with the standard height and width which starts at 
coordinates x=0.5 and y=0.0 and then passes through three intermediate 
points before ending at x=7.0 and y=6.5.

Instead of doing this, we could define the '===' message for points and 
walls in regular Self and write

 w1: (0.5 at 0)===(0 at 0)===(0 at 7)===(7 at 7)===(7 at 6.5)

using only the literal syntax for numbers and the '@' and '===' messages 
to build the same wall object as in the previous example. The problem 
with this is that it takes a little while to build this wall from the 
10 numbers and so we don't want to do this every time a popular method 
is executed.

To show a graphical version of this same wall object I would have to 
attach a picture to this email, so I will let you just imagine we did 
it with the sketchMorph we created for your thesis. You can change the 
wall after it was created since the sketchMorph is a graphical editor, 
but you can also edit the text for the two version of the example I 
gave above. The first, of course, can be done while the program is 
running while the latter while the program is being created. That makes 
a difference for languages like C, but not for Self.

Even though the three versions of the wall object are equivalent in 
theory, in practice it is more fun to deal with the graphical version.

> I put forward clearly in my papers that the software architecture
> is the place of discourse and communication.

I was hoping for a simple and concrete example like I gave above.

-- Jecel

More information about the Self-interest mailing list