Sex, Drugs & Unix

Home » Archives » November 2005 » 20 years of Free Software

[Previous entry: "further words on the crisis at Wayport"] [Next entry: "HTML O' the Day"]

11/27/2005: "20 years of Free Software"


So I went to look, and just about 18 years ago, I submitted my first GPL-licensed GNU Emacs patch, a version of unexec for the Convex machine(s).


/* modified for C-1 arch by jthomp@convex 871103 */
/* Corrected to support convex SOFF object file formats and thread specific
* regions. streepy@convex 890302
*/

This, and some work Bob Miller and I did one night to reduce the number of system calls in the loop that reads characters was the end of Convex licensing Unipress Emacs. The GNU variant was so much better that merely substituting it into the ConvexOS release allowed Convex to close every open bug filed against Unipress Emacs.

I also helped Martin Streicher (who then worked across the hall, and is now the Editor-in-Chief of "Linux Magazine") fix the unexec.c used for Unipress Emacs.

After that I got busy on GCC. Quite literally I was working on GCC (for the Convex) in Dallas while Michael Tiemann was working on GCC for Sequent 32000 and G++ at MCC in Austin. My work on GCC ended up causing a lot of... trouble at Convex. Seems the manager of the (for sale) compiler product (and group) didn't like the fact that gcc had a better scalar code generator than the highly-prized Convex "vector" compiler, and that the marketing group would use GCC to 'win' customer benchmarks where necessary. Just after I left, the edict came down that you would be fired from Convex for using GCC in a customer benchmark, never mind that the proprietary compiler produced slower code in some benchmarks, and that any Convex customer could get a copy of the GNU C compiler. I'd also 'ported' gdb, the GNU debugger to the Convex architecture sometime during 1988. (I didn't sleep or date much back then.)

Note that this was about a year later, that Friday that was my "last day" was November 4, 1988. The Convex bits for emacs made the version 18.50 release. GCC for the Convex made the beta, or "compiler" tape in 1989.

I'd been using emacs for a couple years by then. I once managed to typeset the version 18 emacs manual on an Imagen laser printer (and hand it bound at the local Kinkos) back in October or November of 1986. (The manual printed as "Fifth Edition October 1986".) Several days later, I had the manual with me (I read it a lot), when I met Marvin Minsky when he was appearing with Carl Sagan at an "American Peace Test" anti-nuke rally in Las Vegas. They all went to get arrested at the Nevada Test Site the next day. I managed to get up to the stage after the speeches and had Dr. Minsky autograph the only thing I had on me, my GNU Emacs Manual. He inscribed it, "Best Wishes, Marvin Minksy, Friend of Stallman". I still have the book, as well as a "Sixth Edition" GNU Emacs manual, this time printed by the FSF, (with RMS riding the GNU on the front cover, and a "software hoarder" on the back) dated March 1987. It contains the "Clarified 20 March 1987" version of the "GNU Emacs General Public License".

ESR claims, "I was one of the original GNU contributors back in 1982-83, and I've been at it ever since." I find this curious, since RMS didn't announce "Project GNU" until September 1983, and work didn't start until January 5, 1984, when RMS quit his job at MIT. Work on GNU Emacs didn't start until September of 1984.

The first widely-distributed version (indeed this was the first public release) of GNU Emacs, version 15.34, was made on March 20, 1985.)

GNU Emacs 16.56 followed on July 15, 1985. The major change here is that all of the code from Gosling emacs was expunged due to copyright concerns. On Sepember 19, 1985, GNU Emacs 16.60 was released, and this release contained first patches from the net, including preliminary SYSV support.

What really grinds on me is that nobody has challenged esr's claim of having "contributed" "in 1982-1983" to the GNU project when work on GNU didn't start until 1984, and the "GNU Manifesto" wasn't relesed until 1985.

I can't find any elisp by ESR prior to 1991. (Now late 1988, see update below.)

Point in fact, during 1982-1983 rms was very busy single-hadedly duplicating the efforts of the entire Symbolics (nee: slimebolics) team in order to both keep Greenblatt's LMI apace and proprietary code off the MIT lisp machines. This super-human effort was the catalyst for what became "Project GNU".

Are we to believe that Eric Raymond founded "Project GNU"?

Enquiring minds want to know.

UPDATE:
Russ Nelson has provided a link to some evidence that ESR contributed to emacs as early as late 1988.

As I responded to Russ, I find '1988' (or even 1987) far easier to accept as an epoch for Eric's involvement with project GNU.

LATER:
rms wrote with:
"Eric contributed to Emacs development for a few years, around 1988 to 1991. I don't recall that he contributed substantially before 1988, but I could have forgotten something."

STILL LATER: I found where I'd finished a Convex port of gdb, by March 20, 1988, too. See also here.