The Origin of Emacs in 1976
Early editors, TECO, and Emacs’ origin context
- Posters recall using TECO-based editors, VTedit/vted, SOS, XEDIT, EDT, SPEED/SED, etc., illustrating a diverse ecosystem before vi became dominant.
- Many stress how hard TECO was to use: invisible point, paging files manually, and syntax “like line noise,” yet powerful enough to build full-screen editors and even run inline assembly.
- TECO-based Emacs sources (e.g., dired) are cited as examples of extreme expressiveness without modern language niceties.
Email addressing and pre-Internet mail
- Early ARPANET mail often used “user at HOST” instead of
user@HOST, matching early RFCs. - Later RFCs mention both “at” and
@, and hierarchical addresses; syntax evolved over time. - UUCP
host!user“bang paths” and other non-Internet formats (e.g., VM/CMS style) are discussed. - There’s some confusion/clarification around when FTP, SMTP, and UUCP appeared and how mail initially piggybacked on FTP.
Early networking, filesystems, and terminals
- ITS is highlighted for early, sophisticated features: user-space devices, transparent network file systems (MLDEV), process detach/reattach, and pseudo-TTY based terminal support.
- SUPDUP is discussed as a “super” display protocol enabling efficient remote screen handling, including tricks to scroll and repaint quickly at 300 baud.
- Historical anecdotes emphasize bandwidth limits and why line editors and minimal screen updates mattered.
Emacs variants and implementation discussions
- Multiple Emacs lineages are mentioned: original TECO Emacs, Multics Emacs, Lisp Machine editors, Gosling Emacs on Unix, modern Common Lisp/Scheme clones, and Rust experiments (remacs, emacs-ng).
- Some note that in Lisp-based systems there was effectively no boundary between “editor language” and “implementation language.”
Longevity, rewrites, and modern relevance
- Several commenters remark on the remarkable durability of Unix shells, Emacs, and vi across decades and platforms.
- There is interest in rewriting Emacs internals in more modern, multicore-friendly languages (Go/Rust), but others point to prior attempts and note that reimplementing Emacs Lisp alone is far from reproducing Emacs.
- One thread addresses whether learning Emacs in 2024 is worthwhile: supporters emphasize extensibility and fun with Emacs Lisp; skeptics find keybindings unergonomic and might switch if performance stalls.