[continued from previous message]
of the possibility of implementing many small, cheap, modular,
easily-replaceable functions (not a possibility in PL/I), having
found this to be a major feature of an earlier private tool I
implemented in Multics MacLisp.
The notion of using Lisp on the Lisp machine (for Eine, and later
Zwei) was a requirement, not an innovation. It did not speak to the
issues of the suitability of Lisp for such a task, nor to that of
what would be the best language for such a task. The idea of
-choosing- Lisp for a mainframe editor implementation was innovated
here. The idea of augmenting Multics TECO, and that of writing a
TECO-like editor gut in flat-out PL/I were rejected by me in favor
of a Lisp program that implemented editor functionality.
Inspired by the TECO in which EMACS (on ITS, then the only program
using that name) was implemented, I designed a TECO-like control
and "point" manipulation model in a Lisp framework, which I thought
was natural and obvious, not at all similar to the buffer-pointer
passing model of the Lisp Machine editors. The natural combination
of Lisp macrology and scoping with this type of model proved to be
flexible, powerful, and appealing: this model caught on, and is now
the basis of everything in the world; the Lisp machine's did not.
The intellectual lineage of GNU Emacs, in these regards, comes
directly from James Gosling's Emacs, which came directly from (and
was credited to) Multics Emacs.
I rank the significant innovations of Multics Emacs as: (1)
Explicitly-designed extension languages, which could be understood
and used by non-experts. (2) Lisp as an editor implementation
language. (3) Lisp and Lisp-macros as an extension language. (4) A
control regime and macrology, including many names (e.g.,
"save-excursion"), that have become today become semi-standard
through GNU Emacs and other systems.
Major extensions that became part of the product should also be
credited to Richard Lamson, Gary Palter, and William York, who
became my guerilla band, back then.
Multics Emacs: The History, Design and Implementation
http://www.multicians.org/mepap.html
Multics Emacs Users' Guide
http://bitsavers.trailing-edge.com/pdf/honeywell/multics/CH27-00F_emacs_Nov86.pdf
http://bitsavers.trailing-edge.com/pdf/honeywell/multics/CJ27-00_Emacs_Users%27_Guide_Dec79.pdf
Multics Emacs Extensions Writer’s Guide
http://bitsavers.trailing-edge.com/pdf/honeywell/multics/CJ52-01_emacsExtns_Jul82.pdf
http://bitsavers.trailing-edge.com/pdf/honeywell/multics/CJ52-00_Emacs_Extension_Writers'_Guide_Jan80.pdf
Source
http://web.mit.edu/afs/net/dev/reference/multics/ldd/unb/source/
PMATE, ZMATE
name: PMATE, ZMATE
last changed/verified: 1994-12-20
original distribution: ?
version: PMATE (DOS) 4.0, PMATE (CP/M) 3.21, ZMATE (CP/M, Z-System) 1.0
base language: assembly language (not needed to use editors)
implementation language: assembly language (not needed to use editors)
extension language: MATE macro language (TECO-like)
scope of implementation: extensible
hardware/software requirements: IBM PC, CP/M, Z-System
organization/author:
original by Michael Aronson (MATE = Michael Aronson's Text Editor)
ZMATE version by Bridger Mitchell and Jay Sage
ZMATE available from:
Sage Microsystems East
1435 Centre Strt
Newton MA 02159-2469
USA
+1 617 965 3552
(Availability of PMATE for the PC is not certain at this time. Sage
Microsystems may be able to offer it.)
not free, contact vendor for price information
Preditor
name: Preditor (was: Compuware Professional Editor, PVCS Professional
Editor and Sage Professional Editor )
last changed/verified: 1997-08-22
original distribution: 1990
version: 3.01
base language: C
implementation language: C
extension language: PEL (custom based on AWK, C-like)
scope of implementation: extensible
hardware/software requirements: W95, NT, OS/2
organization/author:
Compuware Corporation
31440 Northwestern Highway
Farmington Hills, MI 48334-2564
USA
+1 810 737 7300
800 538 7822
fax +1 810 737 7564
preditor@compuware.com
not free, contact vendor for price information
old character mode version 1.101 for DOS and OS/2 may still
be available, but is not maintained
Preditor2
name: Preditor/2 (derived from Sage Professional Editor)
original distribution: 1994
version: 2.1
base language: C++,C
implementation language: C++,C
extension language: PEL (custom based on AWK, C-like)
scope of implementation: extensible
hardware/software requirements: IBM PC, OS/2
organization/author:
Compuware Corporation
31440 Northwestern Highway
Farmington Hills, MI 48334-2564
USA
+1 810 737 7300
800 538 7822
fax +1 810 737 7564
preditor@compuware.com
not free, contact vendor for price information
free DEMO version (nagware that times out in 14 days), anonymous FTP from:
hobbes.nmsu.edu /os2/demos/p2demo21.zip
SlickEdit
name: Slick, SlickEdit
last changed/verified: 1997-12-16
original distribution: ?
version: 2.4
base language: C
implementation language: C
extension language: Slick-C
scope of implementation: extensible
hardware/software requirements: IBM PC, UNIX
organization/author:
MicroEdge Inc.
PO Box 988
Apex, NC 27502-0988
USA
http://www.slickedit.com
email:
sales@slickedit.com
+1 800 934 3348
+1 919 303 7400
fax +1 919 303 8400
not free, contact vendor for price information
(this is a text-mode interface)
Visual SlickEdit
name: Visual SlickEdit
last changed/verified: 1997-12-16
original distribution: ?
version: 3.0
interface: graphical MDI
base language: C/C++
implementation language: C/C++
extension language: Slick-C
scope of implementation: extensible
requirements: Windows, NT, OS/2, or UNIX
organization/author:
MicroEdge, Inc
PO Box 988
Apex, NC 27502-0988
USA
http://www.slickedit.com
email:
sales@slickedit.com
+1 800 934 3348
+1 919 303 7400
fax +1 919 303 8400
not free, contact vendor for price information
(this is a GUI interface)
SPE Editor
name: SPE Editor
last changed/verified: 1994-12-20
original distribution: ?
version:
base language: Lisp
implementation language: Lisp
extension language: Lisp
scope of implementation: extensible
hardware/software requirements: UNIX
organization/author:
Sun Microsystems, Inc.
2550 Garcia Ave
Mountain View CA 94043
USA
+1 415 960 1300
TLX 37 29639
not free, contact vendor for price information
Sprint
name: Sprint (in some countries 'Esprit')
last changed/verified: 1994-12-20
original distribution: 1985?
version:
base language: C
implementation language: C
extension language: custom
scope of implementation: extensible
hardware/software requirements: IBM PC
organization/author:
Borland International
1800 Green Hills Rd
Scotts Valley CA 95067
USA
not free, contact vendor for price information
Sys-IX Editor
name: Sys-IX Editor
last changed/verified: 1994-12-20
original distribution: ?
version:
base language: C?
implementation language: C?
extension language: macro
scope of implementation: command set
hardware/software requirements: UNIX, IBM PC
organization/author:
System-IX (Networks) Ltd.
55 Bedford Court Mansions
Bedford Avenue
London WC1B 3AD
UK
+44 71 636 8210
fax +44 71 255 1038
G.W. Computers Inc.
4 Eagle Square
East Boston MA 02128
USA
+1 617 569 5990
fax +1 617 567 2981
_Note:_ may not be Emacs not free, contact vendor for price
information
Unipress Emacs
name: Unipress Emacs
last changed/verified: 1994-12-20
original distribution: ?
version:
base language: C
implementation language: MLisp
extension language: MLisp
scope of implementation: extensible
hardware/software requirements: UNIX, VMS, IBM PC
organization/author:
Unipress Software Inc
2025 Lincoln Hwy
Edison NJ 08817
USA
+1 201 287 2100
fax +1 201 287 4929
telex 709418
_Note:_ was Gosling's Emacs not free, contact vendor for price
information
VOS Emacs
name: VOS Emacs
last changed/verified: 1994-12-20
original distribution: ?
version: 10
base language: PL/I
implementation language: PL/I
extension language: none
scope of implementation: modified command set
hardware requirements: Stratus XA, IBM System/88 or Olivetti CPS-32 computer
software requirements: VOS operating system
organization/author:
Stratus Computer Inc.
55 Fairbanks Blvd
Marlboro MA 01752
USA
+1 508 460 2000
telex (294112) ANSBK STRA UR
not free, contact vendor for price information
Win-Emacs
name: Win-Emacs
last changed/verified: 1996-08-14
original distribution: April 1993
version: 1.35 (released October 1994), 1.5 expected 1/96
base language: C
implementation language: Lisp
extension language: elisp (GNU Emacs Lisp)
scope of implementation: extensible
hardware/software requirements: IBM PC, Windows 3.1, 95, or NT
organization:
Pearl Software
2000 Powell St. Suite 1200
Emeryville CA 94608
USA
+1 510 652 4361
fax +1 510 652 4362
tech@pearlsoft.com
info@pearlsoft.com auto-replies with further information.
FTP a free fully-functional nagware version from:
ftp://ftp.netcom.com/pub/pe/pearl/wemdemo*
_Note:_ Win-Emacs is derived from XEmacs 19.6 (nee Lucid Emacs).
Win-Emacs is a native MS-Window app which supports multiple
windows, fonts, code highlighting, arbitrary keymapping, DDE,
winsock, long filenames, drag-and-drop, etc. Version. 1.5 is a
Win32s app with most Unix features (e.g. asynch. subprocesses). The
free version of Win-Emacs is based on a nagware X emulator: a nag
screen pops up every half-hour; otherwise it is precisely identical
to the supported commercial version of Win-Emacs. Debatable whether
this should be moved into the "versions that cost" category.
Ben Wing, the main author of Win-Emacs, is now the most productive
active developer of XEmacs. Most features of Win-Emacs have been
added to XEmacs.
ZMACS
name: ZMACS
last changed/verified: 1994-12-20
original distribution: ?
version:
base language: Lisp
implementation language: Lisp
extension language: Lisp
scope of implementation: extensible
hardware/software requirements: Symbolics
organization/author:
Symbolics, Inc.
8 New England Executive Park
Burlington MA 01803
USA
+1 617 221 1000
+1 800 533 7629
not free, contact vendor for price information
(Now somewhere in Concord.)
ZMACS TI
name: ZMACS (TI Explorer Emacs)
last changed/verified: 1994-12-20
original distribution: ?
version:
base language: Lisp
implementation language: Lisp
extension language: Lisp
scope of implementation: extensible
hardware/software requirements: Explorer
organization/author:
Texas Instruments
12501 Research Blvd
Austin TX 78759
USA
+1 512 250 7111
+1 800 232 3200
fax +1 512 250 6522
not free, contact vendor for price information
Implementations That Are No Longer Available
EINE
name: EINE (EINE is not Emacs (the first known recursive acronym)),
ZWEI (Zwei Was Eine, Initially (the author knew German)),
last changed/verified: 1994-12-20
original distribution: ?
version:
base language: Lisp
implementation language: Lisp
extension language: Lisp
scope of implementation: extensible
hardware/software requirements: Lisp Machine
organization/author:
MIT
USA
no longer available
ZWEI eveolved into Zmacs and all of the Symbolics, Texas Instruments,
Lisp Machines, and related variants.
Emacs20
name: Emacs (aka Prime Emacs)
last changed/verified: 2006-10-27
original distribution: ?
version: 20
base language: SPL, a variant of PL/1
implementation language: SPL, a variant of PL/1
extension language: Lisp
scope of implementation: extensible
hardware/software requirements: Prime
organization/author:
Prime Computer, Inc.
24 Prime Park Way
Natick MA 07160
USA
+1 508 651 3342
telex 174519
telex +1 508 651 2769
not free, contact vendor for price information
Note: Written by Bob Frankston and Seth Steinberg.
Leif
name: Leif
last changed/verified: 1994-12-20
original distribution: ?
version:
base language: C
implementation language: Lisp
extension language: Lisp
scope of implementation: extensible
hardware/software requirements: UNIX, VMS
organization/author:
The Saga Group
Department of Computer Science
University of Illinois at Urbana Champaign
1304 W. Springfield
Urbana IL 61801
USA
leif@a.cs.uiuc.edu
{pur-ee|ihnp4}!uiucdcs!leif
_Note:_ Leif is really just GNU Emacs with a small modification, an
elisp extension, and an external parser.
NMODE
name: NMODE ("New MODE"?), predecessor may be EMODE
last changed/verified: 1994-12-20
original distribution: ?
version:
base language: PSL, Common LIsp
implementation language: PSL, Common LIsp
extension language: PSL, Common LIsp
scope of implementation: extensible
hardware/software requirements: HP series 9000
organization/author:
Hewlett-Packard
old symbolic languages group?
no longer available
TORE
name: TORES (Text ORiented Editing System)
last changed/verified: 1994-12-20
original distribution: ?
version:
base language: C
implementation language: C
extension language: none
scope of implementation: command set
hardware/software requirements: UNIX
organization/author:
Jeffrey Schiller
MIT
USA
no longer available
PD
name: PD Forthmacs System Editor
last changed/verified: 1994-12-20
original distribution: ?
version:
base language: Forth?
implementation language: Forth?
extension language: none
scope of implementation: command set
hardware/software requirements: Atari?
organization/author:
Bradley Software
no longer available
TV
name: tv (aka otv, SINE (SINE is not EINE (the first known
doubly-recursive acronym)))
last changed/verified: 2019-04-15
original distribution: 1977
version:
base language: PL/1
implementation language: SINE (Lisp-like)
extension language: SINE (Lisp-like)
scope of implementation: extensible
hardware/software requirements: MagicSix on Perkin-Elmer 3200 series
organization/author:
Owen "Ted" Anderson
MIT Architecture Machine Group
USA
https://github.com/ArchMach/Sine
background information
https://github.com/ArchMach/Sine/blob/master/saildart.org/OTA/README.md
UE
name: ue
last changed/verified: 1994-12-20
original distribution: ?
version:
base language: ?
implementation language: ?
extension language: none
scope of implementation: command set
hardware/software requirements: Atari ST
organization/author:
pm@cwru.edu
no longer available
Part of Gulam a public-domain shell.
VINE
name: VINE (Vine Is Not Emacs)
last changed/verified: 1994-12-20
original distribution: 1977
version:
base language: Fortran (!)
implementation language: Fortran
extension language: none
scope of implementation: command set
hardware/software requirements: VMS
organization/author:
Craig Finseth
Texas Instruments
Dallas TX
USA
no longer available
Z80EMACS
name: Z80EMACS
last changed/verified: 2007-08-23
original distribution: 1992?
version: 0.1
base language: C
implementation language: C
extension language: custom
scope of implementation: extensible
hardware/software requirements: CP/M
organization/author:
Ralph Betza (FM),
gnohmon@scscomm.com
uunet!ssiny!gnohmon
free, anonymous FTP from:
rtfm.mit.edu in pub/z80/emacs/*
Z80EMACS is a port of microemacs 3.6 to the CP/M operating system.
Microemacs keeps all data in memory, and CP/M must live in a 64KB
address space. By clever use of overlays and byte-squeezing and
tuning, Z80EMACS is able to edit files of size 30KB! microemacs 3.6
had no facility for remapping the keyboard bindings. Z80EMACS does
it with an offline utility. Z80EMACS uses overlays extensively, but
the most frequently used commands are all either in the root
segment or in one particular overlay. Since this overlay is usually
already in memory, performance is quite good, even when running
from floppies. Z80EMACS has the ability to edit multiple files,
display multiple windows, and do keyboard macros, among other
things. This makes it the spiffiest CP/M editor you could ever hope
to see. Z80EMACS comes with source and binaries; it was compiled
with AZTEC C, which few CP/Mmers have, so the binaries are more
likely to be useful than the source.
Unknown 1
name: none
last changed/verified: 1994-12-20
original distribution: ?
version:
base language: C
implementation language: C
extension language: none
scope of implementation: command set
hardware/software requirements: HLH Orions
organization/author:
Steven Zimmerman
no longer available
Dated 1983. Described as a "distant descendant of the one written by
Warren Montgomery at Bell Labs. Might be an early, non-commercial
version of CCA Emacs.
Unknown 2
name: none
last changed/verified: 1994-12-20
original distribution: ?
version: 1.1, 2.1 (?)
base language: C and 8088 assembler
implementation language: C and 8088 assembler
extension language: none
scope of implementation: command set
hardware/software requirements: IBM PC, HP-150, TIPC
organization/author:
Don P. Bennett, Jr.
Hewlett Packard (when he wrote it)
no longer available
This editor identifies itself as "Emacs", and has HP-style soft
labels for the first eight function keys hard-bound to "file
commands," "window commands," "buffer commands," etc. Versions 1.1
and 2.1 are known to exist. Other versions may also have escaped.
1.1 was written in Microsoft C and 8088 assembler 1.0 (or was that
2.0?) in about 1985. 2.1 was written using Microsoft C 3.0 in about
1986. All versions work quite usably, despite fatal bugs in some
commands. (Memory limits and large files can cause death,
"ESC-digit" causes immediate death.) ("If it dies when you do that,
stop doing it!")
End
--- SoupGate-Win32 v1.05
* Origin: fsxNet Usenet Gateway (21:1/5)