Thoughts on the nature of programming...Asynchronous Events

Peter Smet peter.smet at flinders.edu.au
Thu Jun 24 12:05:23 UTC 1999


Marcel,

These are very interesting thoughts. I hadn't really thought through that
having mobile neighbours also means that you need to dynamically calculate
them.

>Multicast to a dynamic group is the next step:
>
> self neighbours doSomethingInteresting:fascinatingArgument.
>
>(assuming that neighbours is in fact computed dynamically)  A ripple
>effect would be:
>
> self neighbours doSomethingInteresting:fascinatingArgument.
> self neighbours neighbours
>doSomethingInteresting:fascinatingArgument.
> self neighbours neighbours neighbours
>doSomethingInteresting:fascinatingArgument.
> ...


Does the rippling need to work like this? This may be reaching too far,
since the object is now telling objects 2 or more layers away about events.
I was assuming that the ripple effect would emerge from the neighbours doing
something with the event, and then emitting (perhaps different) events onto
their neighbours, and so on. This whole thing is starting to look a bit like
a neural net of some sort... Since the reaction to events depends on the
position and arrangements of objects, objects may need a 'learning period'
during which they shuffle around until they reach some sort of equilibrium.

I was thinking of the steps as:
The event happens at location x,y.
The objects immediately around the event are notified.
The objects do their thing. Doing their thing may involve moving themselves,
or even moving their neighbours.
The objects dynamically calculate who their neighbours are, and may or may
not pass an Event onto them.
The whole thing repeats for the next layer and so on.

The stepping is a bit artificial, really everything should be happening
simultaneously, but I find that too overwhelming to think about.

I havent had time to look at the links yet, but it looks like interesting
stuff.

Peter





More information about the Squeak-dev mailing list