Re: Class Notes for a PL/I Course.
"Bernd Oppolzer berndoppolzer-/[email protected] [H390-MVS]" <[email protected]> Sun, 6 Oct 2019 11:47:00 +0200
| Newsgroups | gmane.comp.emulators.hercules390.mvs |
|---|---|
| Message-ID | <[email protected]> |
Am 06.10.2019 um 10:59 schrieb Giuseppe Vitillaro giuseppe-yuD/ahkh7LvrZ44/[email protected] [H390-MVS]: > > > By the way reading around, I've found these references > > PL/I(F) 1966 IBM - New York Programming Center - Hursley (UK) > BCPL 1967 Martin Richards - University of Cambridge > C 1972 Dennis Ritchie - AT&T Bell Labs > > which drive what seems, to my eyes, a thread rooting > these languaes to ALGOL (1958), through a strict relationship > between them. > > That would explain why our PL/I(F) lack LEAVE/ITERATE. > > I bet we would find them in BCPL loops? Hence those constructs > would have born between 1966 and 1972? Probably with BCPL in 1967? > > Anyone have time to add real history references to > this too simple scheme? > > If you don't yet know it (which I doubt, because it is well known in the community), you should read this: https://fermatslibrary.com/s/the-emperors-old-clothes by C.A.R. Hoare on page 82, he mentions PL/1. Some things I heard about programming languages history: IBM "invented" PL/1 together with the S/360 product line, and it was meant to turn all other languages obsolete. Special regard was made to Fortran and COBOL; these two languages dominated the scientific (Fortran) and the commercial (COBOL) market at that time. ALGOL was a European language, defined in 1958 by Rutishauser et. al. and was not very interesting in the USA at that time, but there were many ALGOL compilers on European hardware. (Niklaus Wirth, BTW, did or supported a very early port of ALGOL to the 360 machine, called ALGOL W, which was pretty successful). It was very late when IBM decided that it was necessary to add the ALGOL block concept (which was unique to ALGOL at that time) to PL/1. Nobody today could imagine PL/1 without this, and all modern languages of course have the ALGOL block concept (in this sense, COBOL and Fortran are not modern, sorry). AFAIK, the first experimental versions of PL/1 (then called NPL) didn't have it. The name NPL (new programming language) had to be dropped, because the acronym was already in use in the UK for national physics laboratory. C is, AFAIK, a direct offspring of BCPL; there were older languages called A and B. I don't really know BCPL, but from what I heard, BCPL is an advanced version of B, and, in contrast to C, it had no other types than int. I'm very interested in Programming Languages History, but is it not always easy to verify all the influences one language had on another language; it's all about people, you know ... nobody knows what the language designers at that time had in their mind, we only see the results today (if they didn't write down their motivations). Kind regards Bernd > . > >