On 2021-11-16 09:57, Douglas McIlroy wrote:
The following remark stirred old memories.
Apologies for straying off
the path of TUHS.
I have gotten the impression that [PL/I] was a
language that was beloved by no one.
As I was a designer of PL/I, an implementer of
EPL (the preliminary
PL/I compiler used to build Multics), and author of the first PL/I
program to appear in the ACM Collected Algorithms, it's a bit hard to
admit that PL/I was "insignificant". I'm proud, though, of having
conceived the SIGNAL statement, which pioneered exception handling,
and the USES and SETS attributes, which unfortunately sank into
oblivion. I also spurred Bud Lawson to invent -> for pointer-chasing.
The former notation C(B(A)) became A->B->C. This was PL/I's gift to C.
After the ACM program I never wrote another line of PL/I.
Gratification finally came forty years on when I met a retired
programmer who, unaware of my PL/I connection, volunteered that she
had loved PL/I above all other programming languages.
My first language was actually PL/C (and the computer centre did not charge for runs in
PL/C). I needed to use PL/I for some thesis-related work and ran into the JLC wall -- no
issues with the former, many issues with the latter. One of the support people, upon
learning that I was using PL/I, said: "PL/I's alright!"
For my very first programming assignment @ USC I spent extra 17 hours due
to an extra space in the JCL statement! It wasn’t a total waste as I rewrote my
program twice, learned to prove to myself that it was correct and once I removed
the space and the program worked, I had a lightbulb moment: Computers were
not inscrutable or mysterious; they were just dumb and literal :-)
I learned IBM assembly language, Fortran and PL/C during those two semesters.
I even wrote an autorouter in Fortran for a project but that my last Fortran project.
Later for a part time job I tried to learn and use pretty much every feature of PL/I.
I found it easier to use than Fortran and fun. Then when I stumbled upon Iverson’s
book on APL and discovered I could use it from an interactive terminal, I managed
to convince the scientist I was working for to let me use it. That was even more fun
but it didn’t last as I made a careless mistake & the program ran too long and used
up most of my boss’es computing budget so it was back to PL/I!
COFF mailing list