Subject: Demented distribution.

From: James Powell <[email-masked]>
Date: Wed, 3 Mar 1993 21:49:56 -0800

Kenneth Schalk writes:
>     All this talk about how one could implement a nifty client with
> all kinds of wizzy features like windows and pictures and icons and
> popup menus brought to mind something I was thinking about a few days
> ago.  If you want to have a client that can do all kinds of
> interesting things, why not just make the client a server that talks
> to the other server that has extra code piled into it for all the
> platform-specific interface issues?  After all, you're going to be
> putting a bit of a load onto the client machine to handle the fancy
> interface, so why not go a bit further, and make it easier to program
> the client to add new interface bells and whistles by making it a
> server in and of itself?

I've been kind of irrationally interested in the idea of servers also
serving as clients, and vice versa. Here's the slightly demented extreme
I came up with a while back:

How about a MOO client that runs all the code itself, using Lambda (via SLIP)
as the "disk-based" server? Downloading only those objects it needs to operate,
possibly only those parts of an object it needs to operate, with a cache, of
course. You'd need a PC based MOO that triggered a download routine whenever a
nonexistant object is referenced. It would also need to fork a GC now and then
to clear out objects that weren't touched recently. You'd need enough RAM to
hold 60,000 blank objects, to talk to Lambda. The download routine'd have to
get an @dump and feed it to the MOO. Then there's the problem of getting more
recent versions of cached objects. Like, if you could mark a room object's
.contents to be updated continuously, you'd see the LambdaMOOers wandering
around.

I like it mainly because I think MOO code is often very handy stuff, and
because I believe in personal, decentralized computing. Whatcha think?
  -Minstrel-