On Fri, 18 Oct 2024, G. Branden Robinson wrote:

> I do observe that this web page credits the publisher of the document as
> "Western Digital Corporation".  Shouldn't that be "Western Electric
> Company"?

Yeah, Western Electric is the issuer on the licenses and printed 
documentation packs for Research Unix in the 1970s.

I completely looked past the typo amidst the thrill of obtaining 
the document!  

I've let an archivist at the CHM know of the correction.  It was 
striking to me when searching that most catalog entries for Unix 
material through v6 combine the documents as a single serial from 
1971-76 with Thompson and/or Ritchie as authors, which made the 
locating specific items difficult.

> > The [nt]roff user manual,
> 
> Noteworthy but frustrating here is that at this point, the forerunner of
> CSTR #54 was still titled simply "NROFF Users' Manual" (PDF pp. 173ff.).
> References to troff are present, but the typesetting program is not
> fully documented.  Frustrating!

I hope we can get closer to filling in the gaps and nroff will 
provide a starting point.

Nroff appears in v2 in 1972.  The roff program that appeared in 
v1 stays static afterwards through v7.

The first reference to the "NROFF Users' Manual" (MM-73-1271-2) 
is in the manpage for v3 (dated January 1973).  The manpage also 
now includes a full request summary of commands and continues to 
do so with dated changes for each release through v5.  

The v6 user's manual header is listed as the second edition of 
the nroff manual from an update in September 1974 (v5).

If the changes for each manpage align with the manuals and the 
source code for v4-6, then it should be possible to trace the 
evolution.  I'll follow-up with an effort to summarize the change 
history in a subsequent email to the groff list in the coming 
weeks.

The troff history is a lot less clear to me at this point for the 
time before the rewrite to c between v6 and v7.

The "Troff User's Manual" appears in v4 and is listed as 
preliminary alongside the "TROFF Made Trivial" document that 
likely provided a basis for the later troff tutorial.  The v6 
nroff user's manual was clearly typeset in troff (like the 
programmer's manuals in general from v4 onwards), but the troff 
user's manual is listed as a separate document on the manpage 
through v6.

> Also we have here the (unnumbered) first edition of the eqn User's
> Guide (PDF pp. 269ff.).

It would be nice to have a drop-in special font with traces 
traces of the non-alphanumeric special characters that rendered 
uniquely on the C/A/T: primarily some of the braces and lower 
case slanted Greek letters.  I am thinking the font would be in 
addition to possible code points for troff-specific drawing 
characters like the underrule and box corners that were recently 
mentioned for addition to unicode coverage.

> The biggest nroff change that leaps out at me right now is that in V6
> _special character escape sequences did not yet exist_.  Given that the
> C/A/T typesetter had already been in use for years by 1975 (with eqn
> giving it strenuous exercise from early on), I find this fascinating.

This omission makes me wonder if the special characters were part 
of short, separate troff-specific manual that remained completely 
separate until v7 (particularly given the eqn style characters 
and other symbols already in use as you noted).

> Evidence of the close relationship with the Teletype Model 37 is
> present, with the `\x` and `\y` escape sequences mapping to "ASCII
> Shift-out" and "ASCII Shift-in", respectively (PDF p. 177).

You would think shift-in and out would have stuck around as a 
shorthand for nroff device type element changes, given the common 
tendency to use Selectrics and later daisy wheel printers.

> .xh           Extra half-line mode on.

Usage of half-lines appears surprisingly often in general and is 
perhaps the major case for outputting troff to look like an nroff 
device.

> I see that the `ad` request did not accept arguments "l" or "b", just
> "c" and "n".  Since "b" and "l" were redundant, my imaginations conjures
> 
> No worries, I'll be there soon!  <https://savannah.gnu.org/bugs/?65954>

The v6 approach certainly seems clearer and supports your 
suggested cleanup of .ad.

> > tmg compiler-compiler, and m6 macro processor memos were previously
> > missing from the distributions in TUHS and later efforts to re-create
> > the documentation.
> 
> I'm intensely interested in both of these from a personal perspective.
> 
> I observe that the TMG and  m6 documents appear may have been prepared
> by vintage 1972 and 1971 nroff, making them worthwhile exhibits on that
> basis alone (PDF pp. 211ff., 239ff., respectively).  I wonder why they
> were never typeset.  Would the document sources have required too much
> "porting" to troff?

Very interesting to locate these papers that are frequently 
referenced.  Based on the appearance and layout, I suspect they 
were formatted early with runoff and frozen in time.  They have 
the same characteristics as the v1 manual on TUHS.

> In summary, there is a boatload of information here that is useful to me
> in understanding Why Things Look The Way They Do.
> 
> Please keep the groff list apprised of further findings.  Fascinating
> stuff.

Thank you for the feedback and the credit in the 32v paper 
reconstruction, which I have been following with interest.
  
I'm planning to update the troff timeline and post further 
documentation online going forward.

I really appreciate all of the extra effort you put in as a 
maintainer by investigating the evolution of roff language design 
and output as part of validating, documenting, and improving 
groff in development.


Sincerely,

Dan


Reply via email to