On Tue, May 26, 2020 at 4:23 AM Rob Pike <robpike(a)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.