VDict mobile



editor, text /tee'koh/ (Originally an acronym for "[paper]
Tape Editor and COrrector"; later, "Text Editor and
COrrector"]) A text editor developed at MIT and modified
by just about everybody. With all the dialects included, TECO
may have been the most prolific editor in use before Emacs,
to which it was directly ancestral. The first Emacs editor
was written in TECO.
It was noted for its powerful programming-language-like
features and its unspeakably hairy syntax (see write-onlylanguage). TECO programs are said to resemble line noise.
Every string of characters is a valid TECO program (though
probably not a useful one); one common game used to be predict
what the TECO commands corresponding to human names did.
As an example of TECO's obscurity, here is a TECO program that
takes a list of names such as:
Loser, J. Random
Quux, The Great
Dick, Moby
sorts them alphabetically according to surname, and then puts
the surname last, removing the comma, to produce the
following:
Moby Dick
J. Random Loser
The Great Quux
The program is
[1 J^P$L$$
J .-Z; .,(S,$ -D .)FX1 @F^B $K :L I $ G1 L$$
(where ^B means "Control-B" (ASCII 0000010) and $ is actually
an alt or escape (ASCII 0011011) character).
In fact, this very program was used to produce the second,
sorted list from the first list. The first hack at it had a
bug: GLS (the author) had accidentally omitted the "@" in
front of "F^B", which as anyone can see is clearly the WrongThing. It worked fine the second time. There is no space to
describe all the features of TECO, but "^P" means "sort" and
"J.-Z; ... L" is an idiomatic series of commands for "do
once for every line".
By 1991, Emacs had replaced TECO in hacker's affections but
descendants of an early (and somewhat lobotomised) version
adopted by DEC can still be found lurking on VMS and a
couple of crufty PDP-11 operating systems, and ports of
the more advanced MIT versions remain the focus of some
antiquarian interest.
See also retrocomputing.
for VAX/VMS, Unix, MS-DOS,
[Authro? Home page?]
(2001-03-26)