4 ms·
Right. RMS had nothing to do with the creation of Unix. He was off in the MIT AI Lab back then, working on ITS in a very different culture: He had a nice PDP-10
by msla 7y ago
Right. RMS had nothing to do with the creation of Unix. He was off in the MIT AI Lab back then, working on ITS in a very different culture: He had a nice PDP-10 mainframe running an OS with plenty of creature comforts [1] as opposed to dmr and Ken bumming an outdated PDP-7 minicomputer to hack up something which barely qualifies as multi-user. (PDP-7 Unix supported two users at most!)
[1] (The ITS concept of detaching jobs is basically similar to tmux or screen on modern systems, in that you can create a job tree, detach it, log out, and then log back in and reattach it and everything will continue as if nothing happened... assuming nobody killed your jobs. ITS didn't really have a security model.)
Even the PDP-11 was underpowered compared to the PDP-10... but the PDP-10 was a dead-end. It was discontinued in favor of the VAX (a PDP-11 extension, hence the name) and attempts to resurrect/continue it (Foonly, for example) came to nothing. RMS got kicked out of his world, his colleagues got swallowed up by the proprietary software world, and he settled on making GNU an extended and improved Unix instead of attempting to port ITS to a workstation with a 68000 CPU and maybe a megabyte of RAM. To RMS, Unix was a good-enough system with a pre-existing userbase, not his ideal platform; the biggest concession to his roots he got was sneaking a real Lisp system (not mocklisp) inside of Emacs. ;)
(And he wasn't even the first to write a Lisp Emacs. Greenberg wrote one for Multics.)
- floren 7y ago> To RMS, Unix was a good-enough system with a pre-existing userbase, not his ideal platform; the biggest concession to his roots he got was sneaking a real Lisp system (not mocklisp) inside of Emacs. ;) There's also the info command, which appears to be a re-implementation of the online docs system from ITS. It's also an abomination... I have vague memories of a time around 2000 where it seemed like half the man pages for basic utilities were just stubs saying "refer to info" which drove me insane.
- fiddlerwoaroof 7y agoI always prefer info pages to man pages when available: info zsh or info coreutils has a much more in-depth discussion of the program in question and, if there isn't an info page available, it'll show the man page.
- btilly 7y agoTo add one more detail to this, in writing Emacs, RMS resisted the trend towards lexical scope, and as a result Emacs got stuck with dynamic scope. Furthermore RMS failed to create a kernel because he believed the micro-kernel hype. But micro-kernels are hard to debug for all of the reasons that micro-services are challenging to scale and debug today if you have failed to create a good toolchain around them. And the result is that by the time that the GNU Hurd was available, most were using Linux and most of the rest were using Free BSD. (One does wonder, however, what would have happened had RMS himself not been crippled by tendonitis. Could he have finished in time for his kernel to be relevant?)
- fulafel 7y agoEmacs supports lexical scope too, since 5 years ago: http://www.gnu.org/software/emacs/manual/html_node/elisp/Using-Lexical-Binding.html http://www.gnu.org/software/emacs/manual/html_node/elisp/Usi...
- btilly 7y agoYes, it does. Which means that for about 30 years it did not, and a lot of Emacs software still uses dynamic scoping.