Seeking designs for a capabilities-based multi-user system

Mark S. Miller markm@caplet.com
Sun, 23 Jul 2000 18:14:55 -0700


At 09:59 AM 7/23/00 , Jonathan S. Shapiro wrote:
>I also think (and I hope MarkM and some others will chime in on this) that
>multiuser stuff is approximately where the boundary starts between what I
>think of as safe pointers and what I think of as operating systems. 

I'm not sure what you mean, but I'll chime in anyway. ;)

In particular, I'm not sure how metaphorically you mean "operating system".  
Is Smalltalk-80 an operating system?  These days I think most people would 
say "no", but when it was introduced people saw functionality that they had 
previously associated only with operating systems, not programming 
languages.  Likewise, people, such as myself, who were more familiar with 
Smalltalk than capability OSes, on seeing KeyKOS had the reaction 
"This OS is more like an OO programming language than an OS.  It's an OO 
virtual machine without a syntax."

So in terms of this metaphorical usage, a system that provides for rich safe 
interaction among multiple mutually suspicious users --such as E -- must 
have features traditionally associated with operating systems.   Why embody 
these principles in a programming language?

Carl Hewitt, the creator of Actors -- another "operating-system-like" 
programming language platform -- gave a very elegant marketing answer 
(paraphrasing): "An operating system is something you have to run instead 
[of what you're currently running].  A language is something you can run in 
addition."


>At the boundary we may need to invent some new technologies.

Chip, what can we talk about?  (Though E was open sourced, EC Habitats was 
not.)


         Cheers,
         --MarkM