On Fri, Feb 7, 2020 at 4:58 PM Rob Pike <robpike@gmail.com> wrote:
Very nice talk with lots of good background. It made me think of the boxes of DECTapes we had under the Unix room floor, and what we might have lost. (Volunteers did manage to recover a couple of them, but time was short).

That makes me sad... :( It seems weird: in the Unix room were also all the binders of PDP-7 code that we've retyped in. I wonder if that was considered the archive for early unix, and that may be why we don't have enough early unix artifacts before the 5th edition? I know it was a bit of a rolling release, but I would have thought that ken or dmr would have made archival copies of the system around 'manual edition day' given all the other artifacts they saved.
 
PWB inaccuracy: The talk said that tools like grep and sed came from PWB, but that's not true. They were original, as I'm sure Warner knows; he just misspoke.

Yes. I got confused. In the talk the organizers flashed the time signs too early so I got nervous and rushed through some bits (it didn't help that this was the largest room I've spoken to and it was in the 'lunch coma' spot so some people fell asleep). I also never have a script for the talks, just a good understanding of the material and a rough list of points I'd like to make...  And at the last minute I thought it would be better to characterize all the v4-based systems as the early forks and de-emphasize that SCCS Unix -> CB Unix was the first fork, so I thought I made that point a little more awkwardly than I would have liked.
 
Slightly more important: PWB also did not introduce the idea of the shell (neither did Unix, for that matter), although there was a distinct shell for that system that included the legendary pump operator, later superseded by here documents.

Yes. I'd only mean that pwb enabled people to start writing real, non-trivial shell scripts. There's other scripts in the tree prior to Bourne Shell...  There's several 'runit' scripts that look to build things pre-make. There's also sources to 'goto.c' which implemented 'goto label' by rewinding stdin until it finds the label then exiting (I presume the older shell would then start reading again from stdin). Or maybe I've totally missed the point of s1/goto.c... there's no comments in it. It is a bit of a stretch, though, you're right.
 
The flow from PWB back to the main research line was a trickle at best. We had bad NIH in 1127.

That matches other sources I've seen: bug fixes flowed into research relatively easily. Performance fixes sometimes (though often not). Some drivers did. And only the occasional program. It's my belief that this slow level of flow is why AT&T shifted from the Research line to the Unix/TS line and merged Unix/TS and PWB into Unix/TS 3.0 (System III was 3.0.1) and roped other internal lines into Unix/TS 4.0 and/or System V. I also now wonder if we got the Bourne Shell because of NIH or because there was some clear technical defect in pwbsh that Steve Bourne was correcting... There were no env vars before V7, and I haven't looked at the pwb sh to see how that issue was handled. I'll have to also include the 'pump' operator in future talks.

Warner