Hacker News new | ask | show | jobs
by JdeBP 371 days ago
That's almost correct. The order matters to an extent inasmuch as for the older paper terminals one had to delay after sending a CR in order to let the print head actually travel. So it wasn't LF+CR, but actually LF+CR+delay. In the other order it would have had to be CR+delay+LF.

MUDs didn't precede the CR+LF convention, because that convention (if memory serves) pre-dates the Internet itself by a few years. However, it wasn't the case that CR and LF separately had the individual functions that they commonly had a decade or so later. Sometimes, for example, LF on its own was newline, or CR had to be simulated with lots of BSes.

The thing about TELNET is that in 1983 it explicitly specified an abstract Network Virtual Terminal and was definite about what newlines should be for it. See RFC 854. Anything TELNET-based was supposed to operate to that abstraction, not take advantage of the fact that sometimes LF+CR worked on real terminals. An NVT wasn't a real terminal. All of the delays and what the characters really did was supposed to be hidden by the abstraction.

1 comments

Interesting trivia.

After all, if you're not controlling a mechanical print head, then LF+CR vs CR+LF should always land you immediately in same place anyways because you're just moving the pointer around a virtual grid.

So it makes sense to get it wrong in 1998 since you're post-teleprinter while also in the early days of the convention becoming crystalized.