by Darius Kazemi, Feb 15 2019
A power move
The technical content
This is 16 pages long. Sigh. I will do my best to summarize. The main points seem to be:
- the dynamic reconnection system is confusing and should be put off to a later date (echoing what previous commenters have said as well)
- they like the error messages outlined in RFC-40
- processes should be interruptable (for example, if a process is locked up you should be able to kill it)
- stateful sockets
- the creation of a User Control and Communication subsystem on a HOST that is in charge of starting up processes on foreign HOSTs
RUNOFF is an early document layout program that influenced
roff and then
groff, among other programs. I had never heard of these programs before this project, but if you are on MacOS you can open your terminal and type
groff and you probably have it installed!
QED is a line-level editor (a text editor that only operates on a single line of text at a time) whose immediate descendent
ed is ALSO probably on your MacOS machine or other unix-like system.
This document is kind of a power move? Instead of just providing suggestions for improvements to the protocol, this is a rewrite of the entire protocol with the suggestions already included. It's the difference between writing to your favorite novelist saying “please include my original character in your novel” and rewriting the whole novel with your character in there and sending them that as a suggested improvement.
So even though this is 16 pages long, I'd say 70% of it is rewording or slight technical tweaking of things that have been expressed in previous RFCs.
The official transcription is completely missing Figure 3! Here is a photo I took of Figure 3 at the Computer History Museum:
There's a great history of the still-heavily-used text editor Vim called Where Vim Came From that goes into the details of how QED influenced the entire family tree of text editors. For exampled, QED begat
ed, and if you want to write a buffer to disk in
ed, you need to type 'w', and if you want to quit you have to type 'quit'. This is where the famous
:wq command in Vim comes from.