EINE and ZWEI
EINE and ZWEI are two discontinued Emacs-like text editors developed by Daniel Weinreb and Mike McMahon for Lisp machines in the 1970s and 1980s.
History
EINE was a text editor developed in the late 1970s.[1] In terms of features, its goal was to "do what Stallman's PDP-10 (original) Emacs does".[2] It was an early example of what would become many Emacs-like text editors. Unlike the original TECO-based Emacs, but like Multics Emacs, EINE was written in Lisp. It used Lisp Machine Lisp. Stallman later wrote GNU Emacs, which was written in C and Emacs Lisp and extensible in Emacs Lisp. EINE also made use of the window system of the Lisp machine and was the first Emacs to have a graphical user interface.
In the 1980s, EINE was developed into ZWEI. Innovations included programmability in Lisp Machine Lisp, and a new and more flexible doubly linked list method of internally representing buffers.
ZWEI would eventually become the editor library used for Symbolics' Zmacs (Emacs-like editor), Zmail (mail client), and Converse (message client), which were integrated into the Genera operating system which Symbolics developed for their Lisp machines.
Naming
EINE is a recursive acronym for "EINE Is Not Emacs", coined in August 1977.[3] It was a play on Ted Anderson's TINT, "TINT is not TECO".[3] Anderson would later retort with "SINE is not EINE".[4]
ZWEI follows this pattern as an acronym for "ZWEI Was Eine Initially".
With "zwei" being the German word for "two", "EINE" could be (re-)interpreted as being a reference to the German word for "one" (in the feminine adjectival form, as in "eine Implementierung", "one implementation").
Further reading
- Weinreb, Daniel L. (January 1979). A Real-Time Display-oriented Editor for the LISP Machine (Undergraduate thesis). MIT EECS Department.
- Edward Coffin (20 October 2018). "A synopsis of Dan Weinreb's undergrad thesis: A Real-Time Display-oriented Editor for the LISP Machine". Reddit.
- Symbolics Genera 6.0 documentation, Book 3, Text Editing and Processing, March 1985
- Symbolics Genera 7.0 documentation, Book 3, Text Editing and Processing, July 1986
- MIT CADR Lisp Machine Source code
References
- "[no subject]".
- "Comment by ZWEI's author Dan Weinreb".
I wrote the second Emacs ever: the Lisp machine implementation, whose spec was "do what Stallman's PDP-10 (original) Emacs does", and then progressed from there. There's just a whole LOT of it. It took me and Mike McMahon endless hours to implement so many commands to make ZWEI/Zmacs.
- Electronic message to BUG-LISPM, Daniel Weinreb, 8 August 1977
- Owen Theodore Anderson (January 1979). "The Design and Implementation of a Display-Oriented Editor Writing System" (PDF). Retrieved 2012-09-09.