Hmmm.. I was thinking of keeping out of this food fight, but a couple of
comments concern me a little as they seem to differ from the history as I
recall it.
@Branden, your observation of the font differences is exactly what I
remember between the C/A/T-4 and the APS-5. I never used the
Merganthaler, so I can not comment.
Anyway -- here is what I remember from those days.
On Fri, Jan 5, 2024 at 11:07 PM Mychaela Falconia <falcon(a)freecalypso.org
wrote:
However, troff in 1978 was still completely, utterly
incapable of driving
anything other than a C/A/T!
For the original two versions of troff, that is a true statement, but I
suspect that you might be in error; for those of us who lived in the era, I
remember the details of the details differently, and the 3rd version was
available in that timeframe.
@Jon S - please feel free to chime in/update/correct my memory -- you lived
this period as an Explorer Scout
Now bwk, the author of this doc, is the very same fine
gentleman who
wrote ditroff, the creature that was
finally capable of driving a Linotron 202 or Autologic APS-5 or whatever
This is true - although I believe that the processor was from Autologic,
the typesetter was from Alphanumeric Corp.
- but the timeline does not match up.
Hmmm - I think that they do.
BWK's troff tutorial is dated 1978-08-04,
That sounds about right and would have been when a lot of this topic was
starting to be discussed.
but his work on ditroff (as I understand it)
happened some time around 1980 or 1981.
Brian worked on the second edition of ditroff in the early 1980s [which is
in the AT&T Tool Chest], but an earlier version was released on its own
(well bundled with a new C compiler - but as a separate "product" (sort
of), you could get Al Arm's folks - *i.e.*, the Tool Chest does not yet
exist), Note that this version spurred the name of the new C compiler for
the 1978 version of the K&R (which I thought was set on the APS-5 for the
first version - although it may have been on the Meganthaler). While I
still have a first edition, at one time, I had a copy of the proofs, which
I got from tjk in late 1977 IIRC - it might have been the Fall of '78
[sadly, I think those pages were lost in the flood of a few years ago, as I
have not seen then in my files].
He may have started ditroff work in 1979, but definitely not in 1978.
Well, the ideas for ditroff started before Joe
died ('76/'77 timeframe),
although Brian probably did not really start *direct work* in it until '78
-- taking over for Joe; he was there initially.
Ok, so here goes how to date things in my mind... [note: a few internet
searches should validate some/most/if not all of these dates]
- Joe Ossana wrote the original troff in PDP-11 assembler in the early
1970s ['73, I think]
- He rewrote it around '75 in C - both versions target the Singer GSI
C/A/T (Computer Assisted Typesetter) - C/A/T-4 typesetter (FWIW: Wang
bought the rights to GSI later, but that's not relevant to the story.
[Those that remember the C/A/T, it worked but had several interesting
issues, and it was expensive to operate].
- Alphanumeric Corp released the Alphanumeric Photocomposition System
(APS) #5 in 1976 using an Autologic-73 mini to drive it.
- AT&T (Computing Facilities/Documentation center folks) decided to buy
one or more APS-5, although Research went for a Morganthaler to replace the
GSI unit (there is a wonderful article about Ken and Co - hacking the
Morganthaler -- I think we have it on TUHS -- I know I have a copy
somewhere).
- Discussions about making troff more independent of the output device
began, and Brian was certainly part of that.
- Remember, compiler people in those days had started to go to the
idea of an ISA intermediate language and make the ISA-specific
"back-end" a
separate thing. So, the idea of a typesetter independent "IL" and the
target program followed and certainly was part of that discussion.
- Ossana died of a heart attack (in the hospital where he was recovering
from an earlier one, IIRC) on 28-Nov-77.
- Note: Research is running the Sixth Edition at this point.
- Through the Sixth Edition, most C programs did I/O themselves via
read/write (like the C troff had), although Mike Lesk's Portable C Library
had started to be available ?? with V5 IIRC ?? But it was distributed with
V6 (see the V6 doc directory for iolib), and a few people (I knew in those
days) seemed to be actively using it. Plus, iolib has some interesting
schemes, like using "-1" as the first parameter to printf(3) or scanf(3) to
say things were "special." [I'll let the reader go find a copy -
it's a fun
read. I remember using iolib when I first learned C back in the day].
- Brian has already been developing the new device-independent version
of troff to target the C/A/T-4, Linotron 202 (Meganthaler), and APS-5 (I'm
not sure if the latter two had been delivered when he started, but they
were on the horizon and POR as it were, so the need to support them by then
was real].
- During his development of the new system, Brian wanted some changes to
C itself to make writing this system easier, but most importantly, he
pushed Dennis for some standardization for the I/O.
- So Dennis updates C, including his new libS.a - which is the new
Standard I/O library - *a.k.a.* <stdio.h>.
- Brian is now the Editor/Convener of the new CS Book Series for PH
[which would eventually push out a lot of titles many of us have at least
read if not in our collection -- I would become a reviewer for a number of
them].
- Also, Dennis and Brian started to write what would become K&R, which
is the dialectic of the language the book describes.
- V7 is still about a year in the future.
- Troff had leaked at our labs in the Universities, and some of us had
it in source, but most everyone at least had the original binary. In fact,
the University of Toronto would write their version of that [which is
related to Tom Ferrin's from UCSF - which is where I got it, but Rob has
made me think Tom started with UT's version.
- Many of us wanted it formally and were pushing Al Arms in
AT&T's Patent and Licensing office to get a distribution of it (pre-Judge
Green, so what we can get and what cannot is often a little dicey). This
would be released in late '78, requiring Dennis' new C compiler with the
libS.a to compile.
- K&R was about to be published, so Dennis knew that we needed a way to
seed and "update" the community.
- The result was the original release, which included a new C compiler
(which cost extra money) -- but that is why many of us refer to this flavor
of C as 'Typesetter C."
- The V7 Ritchie C compiler would be a slightly improved version of the
one in the typesetter release.
Anyway - the point is (I believe that) the second release of ditroff
(ditroff2, if you will) is what you are referring to as the later 1980s
version. This was primarily available via the Tool Chest -- *i.e*., is
post Judge Green.
ᐧ