▲ | skissane 4 days ago | |
> Emacs was born on mainframes and made its way to UNIX much later, after vi had already become the standard. Berkeley released the first version of vi in 1978–development had started in 1976 but I don't believe pre-1978 versions were released publicly. The first versions of Unix for Emacs (James Gosling's implementation, and Warren Montgomery's implementation, developed independently of each other) were released in 1981. But I don't think that three year head start was the biggest factor here. I think a much bigger factor was the fact that vi came with BSD Unix for free, while Gosling Emacs was being sold as a commercial product (although also freely available under rather restrictive terms); I'm not sure what terms Montgomery Emacs (from Bell Labs) was available under, but it soon evolved into CCA Emacs (a commercial product). Free very often beats commercial. The first release of GNU Emacs wasn't until 1985. And then another major factor was that in 1983, AT&T decided to make vi part of UNIX System V. I think the reasons they decided against Emacs included the fact that they could get vi for free from Berkeley, whereas the most popular Unix Emacs implementations in 1983 they'd have to pay licensing fees for commercial use. Montgomery Emacs was developed by Bell Labs so they owned that, but it was relatively primitive and obscure; CCA Emacs was derived from Montgomery's, but had rewritten all the code so no longer was under Bell Labs copyright; GNU Emacs likewise started out as a modified version of Gosling's Emacs and then escaped Gosling's copyright by rewriting all his code, but in 1983 it wasn't an option yet, and its (proto-GPL) licensing terms likely would have been too scary for AT&T's lawyers anyway. |