by Darius Kazemi, Feb 15 2019

In 2019 I'm reading one RFC a day in chronological order starting from the very first one. More on this project here. There is a table of contents for all my RFC posts.

A power move

RFC-46 is by Edwin E. Meyer, Jr. of MIT's Project MAC. It's titled “ARPA Network Protocol Notes”, and is a bit of a latecomer in the “feedback on RFCs 33 and 36” genre.

The technical content

This is 16 pages long. Sigh. I will do my best to summarize. The main points seem to be:

There is a colophon at the end of the document that says this document is prepared using RUNOFF and QED.

RUNOFF is an early document layout program that influenced roff and then nroff and 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:

Communication paths between requestor process and logger and created process at foreign HOST. A flow diagram.

Further reading

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.

How to follow this blog

You can subscribe to this blog's RSS feed or if you're on a federated ActivityPub social network like Mastodon or Pleroma you can search for the user “@365-rfcs@write.as” and follow it there.

About me

I'm Darius Kazemi. I'm a Mozilla Fellow and I do a lot of work on the decentralized web with both ActivityPub and the Dat Project.