This is true, but the concept was taken further in the Oberon operating system, which has a design goal of never asking the user questions at any point.
Interesting. Another thing I vaguely remember reading about Oberon was that any subroutine in the OS could be used from any program, or something like that, for high code reuse. I'm sketchy on the details. Read it quite a while ago, maybe in a BYTE article about Oberon. Not sure if that implies if all programs were in one address space, or what.
I think they are, but OTOH I think that's acceptably safe when it's a single-user, client-side-only OS written in a rigorously bounds-checked, type-safe language.
I suspect that the obsession with process isolation in xNix reflects its origins: as a terminal-based multi-user OS written in perhaps the least-safe high-level language ever developed, one in which it is necessary to deploy terrible techniques such as pointer arithmetic just to get anything done at all.
Mostly agree. Didn't know Oberon was a single user OS, though I did read that Wirth was also involved with creating the Lilith workstation (he missed the chance to call it a Wirthstation :), so it could make sense that Oberon was single-user too.
What's so wrong with C pointer arithmetic, per se? I know about the issues with pointers in general, having used C a lot, earlier. But the arithmetic?