[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

RE: (now completed) Slides from my talk at CPA2000




> -----Original Message-----
> From: Campbell, John [mailto:John.Campbell@xxxxxxxxxxxxxx]
> Sent: 05 December 2000 17:44
> To: 'Tom Locke'; occam-com@xxxxxxxxx; java-threads@xxxxxxxxx
> Subject: RE: (now completed) Slides from my talk at CPA2000
>
>
> Tom and Others
>
> > >The problem is that it's not much of an object if you have to sever
> > >its existing channel connections before sending it.
> >
> > Could you elaborate on this?
>
> What I'm struggling to understand is how you avoid the problems
> attendant to aliasing if you transport an object with open
> connections.  It seems to me that even if you manage to avoid
> aliasing of the *object* you're going to get it on the open
> *channels*.

David May did some work on mobile processes which he presented at WoTUG-21.
I asked someone at Bristol for a copy of the relevant papers (an occam-like
langage called Icarus), but never heard anything more.  It was pretty
interesting stuff though, worth looking at for this case.

>
> I'm supposing that when you move the channel object (as opposed
> to a conventional OO object) out of its original context, the
> original context cannot communicate with it.  That's what I meant
> by "sever its connections". Is there a way to limit access to
> a sent object such that you don't get aliasing, but it can
> still interact with its original environment?

If you send a process down a channel, surely it remains attached to
the same processes it was before.  If you want to communicate with it,
you must send the channels themselves to a different process too.  I
seem to remember all this and more was covered by David May (although
he was talking specifically about processes and not full `active objects'
(we could debate whether there is any difference for hours I would
think...).

>
> Hope everyone finds this discussion as stimulating as I do. -jc
>
>

Jim Moores