[self-interest] dSelf - A distributed Self for JVM Platforms

Jecel Assumpcao Jr jecel at merlintec.com
Wed Mar 7 17:26:31 UTC 2001


Wow! Congratulations on this excelent work!

At a presentation I gave on Monday I was asked if any academic groups
were working on Self implementations and I said "no". I am very glad
that I was wrong about that.

After reading the dself.pdf I would like to make some slight
corrections. There were, in fact, previous papers on distributed Self
but they were written in Portuguese and so wouldn't have been of much
help to you. My key insight in the later papers was that not only
primitive objects but any immutable objects could be copied without
affecting the execution semantics. My system is a multiuser one and any
any given "session" most objects (those belonging to other users) are
read-only and can be replicated instead of using remote references.

Your use of "<-" versus "=" in slot declarations seems strange. I don't
think that the stack examples are quite right: you change slots defined
with "=" ("parent", for example). You use the "clone" method but it is
not defined anywhere (you don't mention the traditional "traits
clonable" object, for example).

Several of the things you mention as missing in dSelf were actually
dropped in Self 3.0. I found it strange that you wrote that Self
doesn't have local methods, but I just tried it in Self 4.1.2 and did
indeed get the error: "syntax error - local slots not implemented yet".
How strange.

In tinySelf 1 I explored parallel (but not distributed) execution in
Self but got stuck in trying to lock things automatically. It is not an
easy problem to solve.

Once again: good work!
-- Jecel



More information about the Self-interest mailing list