Origin of Emacs

From mrc@Tomobiki-Cho.CAC.Washington.EDU Fri Jan 19 23:29:23 1990
From: mrc@Tomobiki-Cho.CAC.Washington.EDU (Mark Crispin)
Newsgroups: alt.folklore.computers
Subject: Re: Emacs
Date: 19 Jan 90 22:56:26 GMT
Organization: Mendou Zaibatsu, Tomobiki-Cho, Butsumetsu-Shi

In article  nott@unix.cis.pitt.edu (nancy nott) writes:
>In the same vein as all of the posts about TECO, VAX, and PDP....
>What does Emacs mean?  

Editing MACroS.

Work on EMACS started in the summer of 1976.  The people who worked on
it primarily at that time were Guy Steele, Richard Stallman, and Dave

EMACS was written in TECO, but not the TECO that most people know.
Most people know a very stripped-down and bastardized TECO which Bob
Clements adapted for the DEC operating system for the PDP-6.  The
original TECO was written by Dan Murphy for the PDP-1, and later
reimplemented on the PDP-6 (by, if I remember correctly, Richard
Greenblatt, Jack Holloway, and Tom Knight in a single weekend!).  The
original TECO used a display scope to display the text being edited
around the editing point.  It remained a source of wonder and
astonishment to the original authors of TECO that anyone ever used it
without a display screen.  This TECO ran on MIT's operating system for
the PDP-6 and PDP-10, ITS (Incompatible TimeSharing).

At Stanford, a different track of display editors had developed, again
starting with the display scope on the PDP-1.  The two surviving today
are TVEDIT for Tenex/TOPS-20 and E for WAITS.  Richard Stallman
visited the Stanford AI Lab and was impressed by E's real-time editing
facility.  When he returned to MIT, he implemented so-called "^R mode"
(a real time editing mode in TECO invoked by the CTRL/R command) in

Although ^R mode made a whole new style of editing possible (unlike E
and TVEDIT, the default action for newly typed in text was insert
rather than replace), it was still rather primitive.  The search was
for a single character only, and you would still have to go back to
TECO to do lots of things (such as read or write files!).

Two major sets of TECO macro packages (a "macro" is a program, written
in TECO, stored in a TECO register) developed; TECMAC and TMACS.
TECMAC was a more real-time editor, while TMACS had a much richer set
of functionality including named commands.  Just about everybody had
their own customizations on top of these packages.

This was the situation when I worked at MIT in the summer of '76.  I
had brought with me my own favorite TECO-style editor, which, although
it had only the functionality of primitive DEC TECO, had two
interesting facilities: (1) it compiled all TECO programs (including
commands) prior to execution, and (2) it had multi-character register
names, which greatly increased the number of possible TECO registers
to virtually infinite.

Richard Stallman implemented the latter in TECO as part of the EMACS
project, which was originally intended as a replacement for both
TECMAC and TMACS.  By New Years in 1977 EMACS had made significant
inroads against TECMAC/TMACS; and in another year or so the older
editors had both succumbed to software rot.

Michael McMahon was irritated at the editor situation for Tenex and
TOPS-20; the alternatives at that time ranged from TVEDIT to QED to TV
(a DEC TOPS-20 TECO-like program with display terminal functionality
much like that of the 1964 MIT TECO).  He undertook the long and
laborious task of porting MIT EMACS from ITS to Tenex and TOPS-20, and
by 1978 EMACS was running on a small set of Tenex and TOPS-20 systems
at MIT, Stanford, and SRI.  Richard Stallman did heroic efforts to
propagate the mass (and free) distribution to just about every TOPS-20
system in the work.

This guaranteed EMACS a place in the sun.  Without McMahon and
Stallman's efforts we'd probably all be using vi or worse today.

In the 1980's, TOPS-20 had reached its zenith.  Because of horribly
high maintenance costs (DEC was trying to shut down the product line
in favor of VAX/VMS, and finally did in 1983), many sites were
migrating from TOPS-20.  Not trusting DEC, many sites picked UNIX as
their migration path instead of VMS.  There were a few critical
TOPS-20 tools which "must" be ported before the migration; and one of
those was EMACS.

The rest is well-known...
 _____     ____ ---+---   /-\   Mark Crispin           Atheist & Proud
 _|_|_  _|_ ||  ___|__   /  /   6158 Lariat Loop NE    R90/6 pilot
|_|_|_| /|\-++- |=====| /  /    Bainbridge Island, WA  "Gaijin! Gaijin!"
 --|--   | |||| |_____|   / \   USA  98110-2098        "Gaijin ha doko ka?"
  /|\    | |/\| _______  /   \  +1 (206) 842-2385      "Niichan ha gaijin."
 / | \   | |__| /     \ /     \ mrc@CAC.Washington.EDU "Chigau. Gaijin ja nai.
kisha no kisha ga kisha de kisha-shita                  Omae ha gaijin darou."
sumomo mo momo, momo mo momo, momo ni mo iroiro aru    "Iie, boku ha nihonjin."
uraniwa ni wa niwa, niwa ni wa niwa niwatori ga iru    "Souka. Yappari gaijin!"


%d bloggers like this: