Thursday, January 27, 2005

OOPSLA '97

I got the video file for Alan Kay's OOPSLA '97 presentation, The Computer Revolution Hasn't Happened Yet.

It's amazing to see how simple yet profound are Alan's contributions, how much meat in them is directly connected to drawing distinctions, and how much genius is necessary to recognize, realize, and reify these ideas regardless of how straightforward they seem.

"It requires a very unusual mind to make an analysis of the obvious" - Alfred North Whitehead.

The concept of encapsulation based on a cell wall is a good example: the cell wall is the distinction between the inside and the outside. Our skin is the distinction between outside and inside. And so on.

The boundary, drawn by intention, makes things exist in terms of what is inside of it.

You can see this in Croquet, too. Each space is a form, each portal is a distinction leading into another form. It may be the case that the form being crossed into is the one the distinction is in - the Croquet mirror.

I like to think about objects in these terms, too. Each object corresponds to a Croquet space. Each distinction corresponds to every object that can be named from the context of the space. Through the portals, spaces send signals to each other. Upon receiving a signal, each space does something to it based on its behavior and, possibly after sending the signal somewhere else, answers another signal to the original sender.

The signal is, like everything that exists, a space marked by a portal.

The act of creating a portal and connecting it somewhere is that of assignment, of giving a name to a space.

Looking in the mirror is evaluating self. Every space should have a mirror.

I have the feeling that, in Smalltalk and other languages, we take the ubiquitous ability to give names for granted too much.

Continuing on, if spaces behave like this, you can arrange portals in such a way that if you send a signal, the signal never stops. Given a complex enough network of spaces connected to each other, a signal that can trigger multiple other signals, and at least one first signal to trigger the domino effect... where have I seen that before?

No comments: