This might have been a case of parallel invention. When I was using Michigan Terminal System in 1981, and it wasn't new then, I remember SERCOM/<i>MSINK</i> being distinct from SCARDS/<i>SOURCE</i> and SPRINT/<i>SINK</i>. Yes, that's cards as in punch cards. My impression is that similar concepts and terminology have also existed in the IBM world since $forever. I doubt that the MTS folks and the Bell Labs folks were aware of each others' identical inventions, but if there was a relationship I'd bet on the MTS folks having been first.
I'm dropping a link [1] for the same post, but on the author's actual webpage; this mirror seems to have stopped updating circa 2016.<p>He's got some pretty neat stuff in there!<p>[1] <a href="https://www.spinellis.gr/blog/20131211/" rel="nofollow">https://www.spinellis.gr/blog/20131211/</a>
As someone who is prone to overengineering, I wonder if they also tried adding more standard streams after that (e.g., debug or verbose, different levels you would find in logging libraries today).<p>I think just out/err has been proven by history but that couldn't have been obvious to the original designers?
I remember something similar where something would go wrong with lpr, and printing a PostScript document would instead print the (really long) textual PostScript source code.
Be nice if they said the year of this invention, but it seems to have been in the 70s. I tried finding earlier references, two candidates:<p>- IBM JCL has DD statements for SYSERR, SYSIN, and SYSOUT, but I can't find the date that SYSERR was introduced.<p>- Any old Fortran IV programmers know that I/O unit 0 is STDERR, unit 5 is STDIN, and unit 6 is STDOUT. And Fortran IV is from 1966 (aka "Fortran 66").<p>However, I found a 1970 manual for Fortran IV, and at that time, unit 0 was illegal (see table 123-3 on page 13-4), so unit 0 must have been added later, adding token support for the claim made in this article.<p><a href="http://www.bitsavers.org/www.computer.museum.uq.edu.au/pdf/DEC-10-LFLMA-B-D%20FORTRAN%20IV%20(F40)%20Programmer%27s%20Reference%20Manual.pdf" rel="nofollow">http://www.bitsavers.org/www.computer.museum.uq.edu.au/pdf/D...</a>
Ah, the beauty of dogfooding, a.k.a. bootstrapping, as Douglas Engelbart called it¹.<p>1. <a href="https://www.youtube.com/watch?v=agdPQuFr0yg" rel="nofollow">https://www.youtube.com/watch?v=agdPQuFr0yg</a>
Somewhat related, and an excellent view:<p>The Great 202 Jailbreak - Computerphile<p><a href="https://www.youtube.com/watch?v=CVxeuwlvf8w" rel="nofollow">https://www.youtube.com/watch?v=CVxeuwlvf8w</a>