💾 Archived View for arcanesciences.com › forgotten captured on 2023-01-29 at 02:31:13. Gemini links have been rewritten to link to archived content
⬅️ Previous capture (2022-05-18)
-=-=-=-=-=-=-
UNIX being a good thing is commonly taken as axiomatic. I don't particularly think it is; if anything, Unix's extreme minimalism and inconsistent design was destructive to the work that was being done in the 1960s and 1970s on advanced, feature-rich hardware and operating systems oriented toward high-level languages and high reliability. I'll probably expand this page at some point, but this is a quick list of the ones that are important to me.
The Burroughs B5000 was a high-level mainframe with tagged memory and a pure HLL OS (there was literally no assembler on the platform) in 1961. Buffer overflows were architecturally impossible. Some design decisions have aged poorly - the decision to make floating-point values the fundamental data type on the system, for instance - but B5000 influenced all later descriptor and capability systems. Burroughs Large Systems was a successful family and is still in widespread use today, although Unisys moved the product line to emulation in the mid 2010s.
The S/38 and the (compatible) AS/400 that succeeded it have all the guts of a well-designed object-oriented descriptor architecture and are commercially successful, with over 100000 customer sites. A flat 128-bit persistent address space hosts a sea of objects and a relational DB cleanly mapped on top of them.
Unfortunately, it has the mouthfeel of an IBM midrange OS and largely exists to run RPG.
Intel's iAPX 432 was an attempt to build a clean platform for state-of-the-art object/capability software to run on. Unfortunately it was fundamentally misdesigned, physically large, lacked mature software, and was largely a flop out of the gate. Thankfully, in a rare inverse example of the second-system effect, it was followed up by the 960MX - a conservative cap extension on Intel's popular 960 RISC family.
The system intended to run on the 960MX, BiiN and its OSIRIS OS, was everything an advanced system should be - user-friendly, approachable, and with a rich set of elegant object-oriented APIs. It was also cancelled immediately before release, while largely complete, due to a desire by Intel to cut their losses and return to prioritizing their safely-profitable PC business.
Stratus's Multics-like fault-tolerant OS isn't an advanced work of object-oriented art, but is something nice on its own: a better general-purpose, "normal", server OS than UNIX. Its standard library is an absolute pleasure to develop with, and the OS is friendly and well-thought-out from top to bottom. I miss working with it every time I have to write C on UNIX.