[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[groff] 21/41: roff(7): Update early McIlroy *roff history.
From: |
G. Branden Robinson |
Subject: |
[groff] 21/41: roff(7): Update early McIlroy *roff history. |
Date: |
Sat, 5 Mar 2022 16:06:16 -0500 (EST) |
gbranden pushed a commit to branch master
in repository groff.
commit 4eeb202ee998265b43ea2fbee6068de6b186293d
Author: G. Branden Robinson <g.branden.robinson@gmail.com>
AuthorDate: Fri Mar 4 17:35:27 2022 +1100
roff(7): Update early McIlroy *roff history.
Per personal communication from McIlroy, but I also turned up a public
email from him to TUHS covering much of the same ground. It sure would
be nice if someone could turn up a Multics roff manual!
---
man/roff.7.man | 63 +++++++++++++++++++++++++++++++++++++++++++---------------
1 file changed, 47 insertions(+), 16 deletions(-)
diff --git a/man/roff.7.man b/man/roff.7.man
index c1cdba03..1b6ed783 100644
--- a/man/roff.7.man
+++ b/man/roff.7.man
@@ -764,11 +764,17 @@ the footnote is rendered.
.\" ====================================================================
.
Computer-driven document formatting dates back to the 1960s.
+.\" John Labovitz points out that Peter Samson's TJ-2 dates to 1963,
+.\" but since this is a *roff man page, we do not begin our story there.
+.\" https://johnlabovitz.com/publications/\
+.\" The-electric-typesetter--The-origins-of-computing-in-typography.pdf
.
The
.I roff
system itself is intimately connected with the Unix operating system,
-but its roots go back to the earlier operating systems CTSS and Multics.
+but its roots go back to the earlier operating systems CTSS,
+GECOS,
+and Multics.
.
.
.\" ====================================================================
@@ -855,10 +861,16 @@ proved influential,
seeing many ports and derivations elsewhere.
.
.
+.\" "Morris did one port and called it roff. I did the BCPL one, adding
+.\" registers, but not macros. Molly Wagner contributed a hyphenation
+.\" algorithm. Ken and/or Dennis redid roff in PDP-11 assembler. Joe
+.\" started afresh for the grander nroff, including macros. Then Joe
+.\" bought a phototypesetter ..."
+.\" -- https://minnie.tuhs.org/pipermail/tuhs/2018-November/017052.html
.P
In 1969,
-Doug McIlroy wrote one such reimplementation of
-.I RUNOFF
+Doug McIlroy wrote one such reimplementation,
+adding extensions,
in the BCPL language for a GE 645 running GECOS at the Bell Labs
location in Murray Hill,
New Jersey.
@@ -892,6 +904,21 @@ you had to backspace and underscore in the input yourself).
.B .fi
to enable filling of output lines got the name it retains to this day.
.
+.I roff
+also featured a heuristic system for automatically placing hyphenation
+points,
+designed and implemented by Molly Wagner.
+.
+It furthermore introduced numeric variables,
+termed registers.
+.
+By 1971,
+this program had been ported to Multics and was known as
+.IR roff ,
+a name McIlroy attributes to Bob Morris,
+to distinguish it from CTSS
+.IR RUNOFF .
+.
.\" GBR can't find a source for this claim (of Bernd's).
.\"Multics
.\".I runoff
@@ -904,32 +931,36 @@ to enable filling of output lines got the name it retains
to this day.
.SS "Unix and \f[I]roff\f[]"
.\" ====================================================================
.
+McIlroy's
.I roff
was one of the first Unix programs.
.
-McIlroy's
-.I runoff
-was,
in Dennis Ritchie's term,
-\[lq]transliterated\[rq] from BCPL to DEC PDP-7 assembly language
+it was \[lq]transliterated\[rq] from BCPL to DEC PDP-7 assembly language
.\" see "The Evolution of the Unix Time-Sharing System", Ritchie, 1984
for the fledgling Unix operating system.
.
-It saw its name shortened to
-.I roff
-(perhaps under the influence of Ken Thompson),
-while adding support for automatic hyphenation with
+Automatic hyphenation was managed with
.B .hc
and
.B .hy
-requests;
-a generalization of line spacing control with the
+requests,
+line spacing control was generalized with the
.B .ls
-request;
+request,
and what later
.IR roff s
-would call diversions,
-with \[lq]footnote\[rq] requests.
+would call diversions were available via \[lq]footnote\[rq] requests.
+.\" The foregoing features may have been in McIlroy's Multics roff, but
+.\" he no longer has documentation for that--only the GECOS version.
+.\" GBR's guess is that they were, if we take Ritchie's choice of the
+.\" term "transliterated" seriously. GBR further speculates that there
+.\" is no reason to suppose that McIlroy's roff was stagnant from
+.\" 1969-1971, whereas we have no record of any significant
+.\" post-transliteration development of Unix roff. Its request list did
+.\" not appear until the 3rd edition manual, and did not change
+.\" thereafter. In 7th edition, roff was characterized as "utterly
+.\" frozen".
.
This
.I roff
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [groff] 21/41: roff(7): Update early McIlroy *roff history.,
G. Branden Robinson <=