On Tue, May 26, 2020 at 4:23 AM Rob Pike <robpike@gmail.com> wrote:
The peculiar input semantics of Pascal are a consequence of a locally hacked-up version of NOS (I think that's the name) that ran on the big CDC machines at ETH in Zurich. It was entirely a card-based system then, and the way Pascal required read-ahead worked perfectly on that system, but not really on any other, including other card-based, even NOS systems.
Yep, NOS was always a real mess.   The ASCII vs 6-bit Display code got mixed up in this too, IIRC.  But again, if you think of Pascal as a teaching language under a batch system, where the student tosses in her/his program and some data to run against it.  The batch queue eventually picks up your 'job', tries to compile the code, and if successful will run the executable it once on your input deck - a small light comes on.  Yeah it does that just fine and it is a pretty simple model.

BTW: a number of those local NOS hacks were to make the system easier to use with student batch files.   I think it was Ward Cunningham that told me in the late 1970s, ETH got some of those NOS hacks from Purdue - Ward had been working in the Purdue computer center and he sent the CDC tape to them (remember Purdue was late to the Arpanet and I do not ETH was one of the few places in Europe that had connections).  Sending mag tapes via mail or maybe FedEx/DHL was pretty standard in those days.    Particularly within Universities, shops with the same hardware and/or OS tended to share a lot of tricks and solutions to issues.

FWIW:  that particular 6500 from Purdue is now at the LCM+L in Seattle.