The Unix Heritage Society mailing list
 help / color / mirror / Atom feed
* Re: [TUHS] Book Recommendation
@ 2021-11-16 14:57 Douglas McIlroy
  2021-11-16 15:22 ` Richard Salz
                   ` (2 more replies)
  0 siblings, 3 replies; 53+ messages in thread
From: Douglas McIlroy @ 2021-11-16 14:57 UTC (permalink / raw)
  To: TUHS main list

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.

Doug

^ permalink raw reply	[flat|nested] 53+ messages in thread
* [TUHS] PL/I stuff - was: Book Recommendation
@ 2021-11-24 23:54 Douglas McIlroy
  2021-11-25 16:35 ` Paul Winalski
  0 siblings, 1 reply; 53+ messages in thread
From: Douglas McIlroy @ 2021-11-24 23:54 UTC (permalink / raw)
  To: TUHS main list

> What, if any, features does PL/I have that are not realized in a modern language?

Here are a few dredged from the mental cranny where they have
mouldered for 50+ years.

1. Assignment by name. If A and B are structs (not official PL/I
terminology), then A + B A = B copies similarly named fields of B to
corresponding fields in A.

2. Both binary and decimal data with arithmetic rounded to any
specified precision.

3. Bit strings of arbitrary length, with bitwise Boolean operations
plus substr and catenation.

4. A named array is normally passed by reference, as in F(A). But if
the argument is not a bare name, as in F((A)), it is passed by value.

5. IO by name. On input this behaves like assignment from a constant,
with appropriate type conversion.

6. A SORT statement.

7. Astonishingly complete set of implicit data conversions. E.g. if X
is floating-point and S is a string, the assignment X = S works when S
= "2" and raises an exception (not PL/I terminology) when S =  "A".

 My 1967 contribution to ACM collected algorithms exploited 3 and 4. I
don't know another language in which that algorithm is as succinct.

Doug

^ permalink raw reply	[flat|nested] 53+ messages in thread
* Re: [TUHS] PL/I stuff - was: Book Recommendation
@ 2021-11-27 15:25 Noel Chiappa
  2021-11-27 15:53 ` Charles H Sauer
  0 siblings, 1 reply; 53+ messages in thread
From: Noel Chiappa @ 2021-11-27 15:25 UTC (permalink / raw)
  To: tuhs; +Cc: jnc

    > From: "Charles H. Sauer"k <sauer@technologists.com>

    > I haven't done anything with 9 ktrack tapes for a long time ...
    > I don't recall problems reading any of them. ...
    > IMNSHO, it all depends on the brand/formulation of the tape. I've been 
    > going through old audio tapes and digitizing them 

The vintage computer community has considerable experience with old tapes; in
fact Chuck Guzis has a business reading them (which often includes converting
old file formats to something modern software can grok).

We originally depended heavily on the work of the vintage audio community, who
pioneered working with old tapes, including the discovert of 'baking' them to
improve their mechanical playability. ("the binder used to adhere the magnetic
material to the backing ... becomes unstable" - playing such a tape will
transfer much of the magnetic material to the head, destroying the tape's
contents.)

It's amazing how bad a tape can be, and still be readable. I had a couple of
dump tapes of the CSR PWB1 machine at MIT, which I had thoughtlessly stored in
my (at one period damp) basement, and they were covered in mold - and not just
on the edges! Chuck had to build a special fixture to clean off the mold, but
we read most of the first tape. (I had thoughtfully ade a second copy, which
read perfectly.)

Then I had to work out what the format was - it turned out that even though
the machine had a V6 filesystem, my tape was a 'dd' of a BSD4.1c filesystem
(for reasons I eventually worked out, but won't bore you all with). Dave
Bridgham managed to mount that under Linux, and transform it into a TAR
file. That was the source of many old treasures, including the V6 NCP UNIX.

      Noel

^ permalink raw reply	[flat|nested] 53+ messages in thread

end of thread, other threads:[~2021-11-27 16:13 UTC | newest]

Thread overview: 53+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-11-16 14:57 [TUHS] Book Recommendation Douglas McIlroy
2021-11-16 15:22 ` Richard Salz
2021-11-16 15:52 ` Ron Natalie
2021-11-23  2:28 ` Mary Ann Horton
2021-11-23  7:57   ` Henry Bent
2021-11-23  8:10     ` arnold
2021-11-23  8:28       ` Henry Bent
2021-11-23 17:26     ` Adam Thornton
2021-11-23 18:54       ` Ron Natalie
2021-11-23 19:04         ` Al Kossow
2021-11-23 19:39           ` Lawrence Stewart
2021-11-23 19:08       ` Ron Natalie
2021-11-23 21:54   ` Thomas Paulsen
2021-11-24 15:18     ` Richard Salz
2021-11-24 15:45       ` Larry McVoy
2021-11-24 18:34       ` Rich Morin
2021-11-24 18:40         ` Larry McVoy
2021-11-24 19:39           ` Clem Cole
2021-11-24 20:02             ` Larry McVoy
2021-11-26 19:49               ` [TUHS] AIX/SMIT (was Book Recommendation) Greg A. Woods
2021-11-25 10:26           ` [TUHS] Book Recommendation Tom Ivar Helbekkmo via TUHS
2021-11-25 12:20             ` [TUHS] AIX/SMIT (was Re: Book Recommendation) Stuart Remphrey
2021-11-24 20:13       ` [TUHS] Book Recommendation arnold
2021-11-24 20:18         ` Will Senn
2021-11-25  7:22         ` arnold
2021-11-24 20:15       ` Rob Pike
2021-11-24 20:21         ` joe mcguckin
2021-11-24 20:27         ` Rob Pike
2021-11-24 21:27           ` Richard Salz
2021-11-24 22:19       ` Charles Anthony
2021-11-24 22:29         ` [TUHS] PL/I stuff - was: " Will Senn
2021-11-24 23:00           ` Rob Pike
2021-11-24 23:13             ` Richard Salz
2021-11-25  1:48           ` Nelson H. F. Beebe
2021-11-25  2:03             ` George Michaelson
2021-11-25 14:47               ` Clem Cole
2021-11-26 22:20                 ` Alan Glasser
2021-11-26 22:33               ` Alan Glasser
2021-11-27  0:23               ` Dennis Boone
2021-11-27  0:30                 ` Larry McVoy
2021-11-27  0:47                   ` Charles H. Sauer
2021-11-27  2:43                     ` Alan Glasser
2021-11-27  0:56                   ` Warner Losh
2021-11-24 23:54 Douglas McIlroy
2021-11-25 16:35 ` Paul Winalski
2021-11-25 18:15   ` Steve Nickolas
2021-11-26 16:59   ` Paul Winalski
2021-11-26 20:30     ` Tom Ivar Helbekkmo via TUHS
2021-11-26 21:22       ` John Cowan
2021-11-27  0:01         ` George Michaelson
2021-11-27 16:12           ` Paul Winalski
2021-11-27 15:25 Noel Chiappa
2021-11-27 15:53 ` Charles H Sauer

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).