Gosling Emacs
From Wikipedia, the free encyclopedia
Gosling Emacs (often shortened to "Gosmacs" or "gmacs") was an Emacs implementation written in 1981 by James Gosling in C. It was the first Emacs to run under Unix. Its extension language, Mocklisp, has a syntax that appears similar to Lisp, but Mocklisp has no lists or other structured datatypes. Gosling initially allowed Gosling Emacs to be redistributed with no formal restrictions, but later sold it to UniPress.
Gosling Emacs was especially notable for its efficient redisplay code, which used a dynamic programming technique to solve the classical string-to-string correction problem. The algorithm was quite sophisticated; that section of the source was headed by a skull and crossbones in ASCII art, warning would-be improvers that even if they thought they understood how the display code worked, they probably did not.
Since Gosling had permitted its unrestricted redistribution, Richard Stallman used some Gosling Emacs code in the initial version of GNU Emacs. However, since UniPress was now selling Gosling Emacs (which it renamed Unipress Emacs) as a proprietary product, it asked Stallman to stop distributing Gosling Emacs source code. UniPress never took legal action against Stallman or his nascent Free Software Foundation, believing "hobbyists and academics could never produce an Emacs that could compete"[citation needed] with their product. All Gosling Emacs code was removed from GNU Emacs by version 16.56, with the possible exception of a few particularly hairy sections of the display code. Recent versions of GNU Emacs (at least as of August 2004) no longer even contain the "skull and crossbones" warning.
[edit] References
- James Gosling, "A Redisplay Algorithm", Proceedings of the ACM SIGPLAN Symposium on Text Manipulation, June 1981