<html>
<body>
Hi Folks --<br><br>
The guts of the Croquet scheme are quite independent of Squeak, and were
thought of as "a higher layer of TCP/IP". Also, the
"Islands" were deliberately set up to be quite independent of
what is inside the Island (which is a kind of abstraction for a
virtual-machine-address-space that has objects). The idea here is that
good things can happen if you really do "real messaging" and if
you include time (pseudotime) specifically in your computing
model.<br><br>
As some of the folks on this list have realized, somewhat careful
organization of a publish/subscribe facility can be the <i>lingua
franca</i> for the Croquet coordination ideas.<br><br>
As you can see from the website, Croquet was done to explore what I
thought was a terrific PhD thesis (of Dave Reed ca. 1978 at MIT) but that
never got implemented. Dave Reed is across the street at the Media Lab,
is friendly and a fun guy to talk to, and is one of the best systems
thinkers I've met over the years.<br><br>
Cheers to all,<br><br>
Alan<br><br>
At 12:27 PM 11/27/2006, Ian Bicking wrote:<br>
<blockquote type=cite class=cite cite="">Ken Ritchie wrote:<br>
<blockquote type=cite class=cite cite="">
<a href="http://www.opencroquet.org/" eudora="autourl">
www.opencroquet.org</a> (especially the TeaTime
components)</blockquote><br>
I just read the "Croquet System Overview" section of this:
<a href="http://www.opencroquet.org/Site%20PDFs/Croquet%20Programming%201.0B.pdf" eudora="autourl">
http://www.opencroquet.org/Site%20PDFs/Croquet%20Programming%201.0B.pdf</a>
<br><br>
It was a very nice overview of the architecture of the system. I
like the approach a lot; the description of the architecture makes me
want to bang out code *right now*, which is always a good sign.
I'll try to resist actually doing so.<br><br>
Whether this should be reimplemented in Python or implemented in a
language-neutral way, I'm not sure. I can kind of imagine the
Router being a service accessible over dbus, but I'm not really sure what
that would accomplish. The dbus message format is also possibly
something to use (since Croquet messages, I assume, are tied to
Smalltalk). But I don't know if that even matters -- there's
nothing here that really facilitates inter-language communication, as it
assumes that all Islands (aka objects) use exactly the same
code.<br><br>
I also wonder if there's room for more sloppy communication. E.g.,
situations where out-of-order message execution is preferable to
blocking. If it damages the integrity of a simulation or 3D world,
it might be preferable to just block. OTOH, I think there are other
kinds of collaboration where responsiveness may be more important than
complete integrity. It perhaps depends in part on how good the
network connections are. What will collaboration feel like over
several hops on a mesh? What about over a satellite internet
connection? I have no idea how this will effect the
experience. And perhaps good message design can help with this
anyway. For instance, if you are editing text you don't necessarily
want to send a message for every keystroke; the UI can batch things up
and resolve conflicts, even if the underlying objects are less
forgiving. So maybe I'm imagining the problem.<br><br>
-- <br>
Ian Bicking | ianb@colorstudy.com |
<a href="http://blog.ianbicking.org/" eudora="autourl">
http://blog.ianbicking.org</a><br>
_______________________________________________<br>
Sugar mailing list<br>
Sugar@laptop.org<br>
<a href="http://mailman.laptop.org/mailman/listinfo/sugar" eudora="autourl">
http://mailman.laptop.org/mailman/listinfo/sugar</a><br>
</blockquote></body>
</html>