GNU Emacs - History

History

Emacs development began at the MIT AI Lab during the 1970s. Before its introduction, the Incompatible Timesharing System (ITS), the operating system on the AI Lab's PDP-6 and PDP-10 computers, featured a default line editor known as Tape Editor and Corrector (TECO) (later changed to Text Editor and Corrector, the ‘tape' referring to paper tape). Unlike most modern text editors, TECO has separate modes which the user used to either add text, edit existing text, or display the document. 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.

Richard Stallman visited the Stanford AI Lab in 1972 or 1974 and saw the lab's "E" editor, written by Fred Wright. He was impressed by the editor's intuitive WYSIWYG (What You See Is What You Get) behavior, which today is used almost universally by modern text editors. He returned to MIT where Carl Mikkelsen, a hacker at the AI Lab, had added a combined display/editing mode called "Control-R" to TECO, allowing the screen display to be updated each time the user entered a keystroke. Stallman 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.

E had another feature which TECO lacked: random-access editing. Since TECO's original implementation was designed for editing paper tape on the PDP-1, it was a page-sequential editor. Typical editing could only be done on one page at a time, in the order of the pages in the file. To provide random access in Emacs, Stallman decided not to adopt E's approach of structuring the file for page-random access on disk, but instead modified TECO to handle large buffers more efficiently, and then changed its file management method to read, edit, and write the entire file as a single buffer. Almost all modern editors use this approach.

The new version of TECO quickly became popular at the AI Lab, and soon there accumulated a large collection of custom macros, whose names often ended in "MAC" or "MACS", which stood for "macro". Two years later, Guy Steele took on the project of unifying the overly diverse macros 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". An alternative version is that EMACS stood for "E with 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 noted that "Emack & Bolio's" was the name of a popular ice cream store in Cambridge, 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"; this ignorance is the basis of a hacker koan, Emacs and Bolio).

According to Stallman, the first operational EMACS system existed in late 1976.

Stallman saw a problem in too much customization and de facto forking and set certain conditions for usage. He later wrote:

"EMACS was distributed on a basis of communal sharing, which means all improvements must be given back to me to be incorporated and distributed."

The original Emacs, like TECO, ran only on the PDP line of computers. It behaved sufficiently differently from TECO 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, but not Unix, initially. Other contributors to early versions of Emacs include Kent Pitman, Earl Killian, and Eugene Ciccarelli. By 1979, Emacs was the editor used by most people in MIT's AI lab and its Computer Science lab.

Read more about this topic:  GNU Emacs

Famous quotes containing the word history:

    There is nothing truer than myth: history, in its attempt to “realize” myth, distorts it, stops halfway; when history claims to have “succeeded” this is nothing but humbug and mystification. Everything we dream is “realizable.” Reality does not have to be: it is simply what it is.
    Eugène Ionesco (b. 1912)

    To summarize the contentions of this paper then. Firstly, the phrase ‘the meaning of a word’ is a spurious phrase. Secondly and consequently, a re-examination is needed of phrases like the two which I discuss, ‘being a part of the meaning of’ and ‘having the same meaning.’ On these matters, dogmatists require prodding: although history indeed suggests that it may sometimes be better to let sleeping dogmatists lie.
    —J.L. (John Langshaw)

    It is the true office of history to represent the events themselves, together with the counsels, and to leave the observations and conclusions thereupon to the liberty and faculty of every man’s judgement.
    Francis Bacon (1561–1626)