Emacs
:This article is about the text editor. For the Apple Macintosh computer model, see eMac.
History
Emacs began life at the MIT AI Lab during the 1970s. Prior to its introduction, the default editor on ITS, the operating system on the AI Lab's PDP-6 and PDP-10 computers, was a line editor known as TECO. Unlike modern text editors, TECO treated typing, editing, and document display separately. Typing characters into TECO did not place those characters directly into a document; one had to write a series of instructions in the TECO command language telling it to enter the required characters, during which time the edited text was not displayed on the screen. This behavior is similar to the program ed, which is still in use.
Related Topics:
MIT AI Lab - 1970s - ITS - Operating system - PDP-6 - PDP-10 - Line editor - TECO - Ed
~ ~ ~ ~ ~ ~ ~ ~ ~ ~
Carl Mikkelsen, one of the hackers at the AI Lab, added a display-editing mode to TECO, allowing the screen display to be updated each time the user entered a keystroke. This more intuitive behavior, which is used by most modern text editors, had been pioneered by the "E" editor written at the Stanford AI Lab. In 1974, Richard Stallman, another AI Lab hacker, reimplemented this mode to run efficiently, then added a macro feature to the TECO display-editing mode, allowing the user to redefine any keystroke to run a TECO program.
Related Topics:
Hacker - TECO - Stanford - 1974 - Richard Stallman - Macro
~ ~ ~ ~ ~ ~ ~ ~ ~ ~
The users at the AI Lab soon accumulated a large collection of custom macros, whose names often ended in "MAC" or "MACS", which stood for "macros". In 1975, Guy Steele took on the project of unifying the diverse keyboard command sets into a single set. After one night of joint hacking by Steele and Stallman, the latter finished the implementation, which included facilities for extending and documenting the new macro set. The resulting system was called EMACS, which stood for "Editing MACroS". According to Stallman, he picked the name Emacs "because was not in use as an abbreviation on ITS at the time." It has also been pointed out that "Emack & Bolio's" was the name of a popular ice cream store in Boston, within walking distance of MIT. A text-formatting program used on ITS was later named BOLIO by Dave Moon, who frequented that store. However, Stallman did not like that ice cream, and did not even know of it when choosing the name "Emacs".
Related Topics:
1975 - Guy Steele - Emack & Bolio's - Ice cream - Boston - Dave Moon
~ ~ ~ ~ ~ ~ ~ ~ ~ ~
Although EMACS was built on TECO, its behavior was different enough to be considered a text editor in its own right. It quickly became the standard editing program on ITS. It was also ported from ITS to the Tenex and TOPS-20 operating systems by Michael McMahon.
Related Topics:
Ported - Tenex - TOPS-20
~ ~ ~ ~ ~ ~ ~ ~ ~ ~
Several Emacs-like editors were written in the following years, including EINE ("EINE Is Not EMACS") and ZWEI ("ZWEI Was EINE Initially"), which were written by Michael McMahon and Daniel Weinreb. (Those names mean "one" and "two" in German, respectively.) In 1978, Bernard Greenberg wrote Multics Emacs at Honeywell's Cambridge Information Systems Lab. Multics Emacs was written in MacLisp, a dialect of the Lisp programming language. User-supplied extensions were also written in Lisp. The choice of Lisp provided more extensibility than ever before, and has been followed by most subsequent emacsen.
Related Topics:
1978 - Bernard Greenberg - Multics - Honeywell - MacLisp - Lisp programming language
~ ~ ~ ~ ~ ~ ~ ~ ~ ~
One early Emacs-like editor to run on Unix was Gosling Emacs, written by James Gosling in 1981. It was written in C and used a language with Lisp-like syntax known as Mocklisp as an extension language. In 1984 it was proprietary software.
Related Topics:
Unix - Gosling Emacs - James Gosling - 1981 - C - Mocklisp - Proprietary software
~ ~ ~ ~ ~ ~ ~ ~ ~ ~
In 1984, Stallman began working on GNU Emacs to produce a free software alternative to Gosling Emacs. It became the first program released by the nascent GNU project. GNU Emacs is written in C and provides Emacs Lisp (itself implemented in C) as an extension language. The first widely-distributed version of GNU Emacs was 15.34, which appeared in 1985. (Versions 2 through 12 never existed. Earlier versions of GNU Emacs had been numbered "1.x.x", but sometime after version 1.12 the decision was made to drop the "1", as it was thought the major number would never change. Version 13, the first public release, was made on March 20, 1985.)
Related Topics:
1984 - GNU Emacs - Free software - GNU project - Emacs Lisp - 1985
~ ~ ~ ~ ~ ~ ~ ~ ~ ~
Like Gosling Emacs, GNU Emacs ran on Unix; however, GNU Emacs had more features, in particular a full-featured Lisp as extension language. As a result, it soon replaced Gosling Emacs as the de facto Emacs editor on Unix.
~ ~ ~ ~ ~ ~ ~ ~ ~ ~
Beginning in 1991, Lucid Emacs was developed by Jamie Zawinski and others at Lucid Inc., based on an early alpha version of GNU Emacs 19. The codebases soon diverged, and the separate development teams gave up trying to merge them back into a single program. This was one of the most famous early forks of a free software program. Lucid Emacs has since been renamed XEmacs; it and GNU Emacs remain the two most popular varieties in use today.
Related Topics:
1991 - Jamie Zawinski - Forks - Free software - XEmacs
~ ~ ~ ~ ~ ~ ~ ~ ~ ~
GNU Emacs was initially targeted at computers with a 32-bit flat adress space, and at least 1MiB of RAM, at a time where such computers were considered high end. This left an opening for smaller reimplementations. Some noteworthy ones are listed here:
~ ~ ~ ~ ~ ~ ~ ~ ~ ~
- mg, originally MicroGNU Emacs, these days installed by default on OpenBSD.
- microemacs, exists in many variations. The editor used by Linus Torvalds.
- freemacs, a DOS version with a stack based extension language, all within the original 64 KiB flat memory limit.
~ Table of Content ~
| ► | Introduction |
| ► | History |
| ► | Features |
| ► | License |
| ► | Using Emacs |
| ► | See also |
| ► | References |
| ► | External links |
~ What's Hot ~
~ Community ~
| ► | History Forum Come and discuss about History, Civilizations, Historical Events and Figures |
| ► | History Web-Ring A community of sites, blogs and forums dedicated to History. Do not hesitate to submit your site. |
and are licensed under the GNU Free Documentation License.
Lexicon - Privacy Policy - Spiritus-Temporis.com ©2005.