Marcus responded to my question about Flexibility with a very interesting (to me) response. He said that the "Flexibility" idea is a reduced form of the real goal, which is "Freedom".
Many of the arguments and policies that are emerging for Hurd in this list are about "Freedom to". Freedom to debug. Freedom to inspect. Freedom to reverse engineer. These are all good things, and in a system that is presumptively single user (or multiuser, but all collaborating without deceit) these are probably the only things that you need to consider. My question is: what rights should the user have concerning "Freedom *from*"? Freedom from interference by other users. Freedom from spying by other users. And so forth. Real systems today are *always* multiuser and *never* collaborative. When you point a web browser at my web page and run my javascript code, your machine instantly becomes multiuser, and if you don't assume (at least in the general case) that I'm out to get you then you're a moron. Like it or not, a successful Hurd needs to ensure "freedoms from" in order to be effective in a connected environment. The interesting thing here is that "freedom to" and "freedom from" invariably involve conflicting choices that must be balanced and architectural compromises that must be made. If the real purpose of the "Flexibility" goal is "Freedom", then it seems like a good idea to enumerate *both* types of freedom so that we can remember all of them at the same time. Who will start? shap _______________________________________________ L4-hurd mailing list [email protected] http://lists.gnu.org/mailman/listinfo/l4-hurd
