[plt-scheme] BASE64(bytes) CR LF

From: Geoffrey S. Knauth (geoff at knauth.org)
Date: Tue Sep 25 08:52:28 EDT 2007

On Sep 25, 2007, at 07:10, hendrik at topoi.pooq.com wrote:
> What many Linuxers probably don't know is that in this instance,  
> Windows
> actually followed the international standard, which dates back at
> least to the 60's, and Unix was the standards-evading culprit in the
> 70's.

It makes me smile to think of Unix as standards-evading.  I think the  
folks behind Unix saw newline as a logical operation that could be  
translated into physical operations (CRLF [1] for Teletypes, cursor  
addressing for newfangled CRTs) through device drivers, and they  
foresaw the day when Teletypes and possibly carriage returns would  
fade into the history books.

We used CRLF 30+ years ago because of Teletypes, which needed a  
carriage return to physically move the carriage back, and a line feed  
to advance to the next line.  I knew some Teletype-era renegades who  
insisted on doing line feeds first and then carriage returns,  
thinking the sequences were equivalent.  LFCR was not equivalent to  
CRLF for at least two reasons:  (1)  Teletypes needed a tenth of a  
second or so of recovery time after the carriage slammed left if the  
head had been all the way to the right, and the newline gave the head  
time to recover enough to start the next line in proper position; (2)  
some forms of Teletype ASCII art, e.g., trying to draw Mona Lisa's  
face [2], required retyping over a line with different characters one  
or more times, and that was only possible if you did a CR without the  
LF.  Once you'd issued a LF, the horse was out of the barn.

[1] CF=carriage return, LF=linefeed aka newline thanks to K&R

[2] http://www.threedee.com/jcm/aaa/index.html
     http://tinyurl.com/332cll  [from computerhistory.org, scroll to  
the right]

Posted on the users mailing list.