Just recollecting old memories: why did AT&T refer to "flags" as
"keyletters" in its SysV documentation? Some sort of denial of
Ed5/6/7/BSD's very existence?
The one good they did was the TTY driver...
-- Dave, who used to work for a SysVile shop
All, while I'm reminiscing about Minnie's history, I just noticed that we
have hit 30,000 postings on the combined TUHS/PUPS mailing list.
===
In the spirit of early Unix, does that mean the message number
has wrapped back to low numbers, skipping those occupied by
messages still running, like process IDs?
Norman Wilson
(temporarily thousands of km from)
Toronto ON
On Wed Feb 23 16:33, 1994, I turned on the web service on my machine
"minnie", originally minnie.cs.adfa.edu.au, now minnie.tuhs.org (aka
www.tuhs.org) The web service has been running continuously for thirty
years, except for occasional downtimes and hardware/software upgrades.
I think this makes minnie one of the longest running web services
still in existence :-)
For your enjoyment, I've restored a snapshot of the web site from
around mid-1994. It is visible at https://minnie.tuhs.org/94Web/
Some hyperlinks are broken.
## Web Logs
The web logs show me testing the service locally on Feb 23 1994,
with the first international web fetches on Feb 26:
```
sparcserve.cs.adfa.oz.au [Wed Feb 23 16:33:13 1994] GET / HTTP/1.0
sparcserve.cs.adfa.oz.au [Wed Feb 23 16:33:18 1994] GET /BSD.html HTTP/1.0
sparcserve.cs.adfa.oz.au [Wed Feb 23 16:33:20 1994] GET /Images/demon1.gif HTTP/1.0
...
estcs1.estec.esa.nl [Sat Feb 26 01:48:21 1994] GET /BSD-info/BSD.html HTTP/1.0
estcs1.estec.esa.nl [Sat Feb 26 01:48:30 1994] GET /BSD-info/Images/demon1.gif HTTP/1.0
estcs1.estec.esa.nl [Sat Feb 26 01:49:46 1994] GET /BSD-info/cdrom.html HTTP/1.0
shazam.cs.iastate.edu [Sat Feb 26 06:31:20 1994] GET /BSD-info/BSD.html HTTP/1.0
shazam.cs.iastate.edu [Sat Feb 26 06:31:24 1994] GET /BSD-info/Images/demon1.gif HTTP/1.0
dem0nmac.mgh.harvard.edu [Sat Feb 26 06:32:04 1994] GET /BSD-info/BSD.html HTTP/1.0
dem0nmac.mgh.harvard.edu [Sat Feb 26 06:32:10 1994] GET /BSD-info/Images/demon1.gif HTTP/1.0
```
## Minnie to This Point
Minnie originally started life in May 1991 as an FTP server running KA9Q NOS
on an IBM XT with a 30M RLL disk, see https://minnie.tuhs.org/minannounce.txt
By February 1994 Minnie was running FreeBSD 1.0e on a 386DX25 with 500M
of disk space, 8M of RAM and a 10Base2 network connection. I'd received a copy
of the BSDisc Vol.1 No.1 in December 1993. According to the date on the file
`RELNOTES.FreeBSD` on the CD, FreeBSD 1.0e was released on Oct 28 1993.
## The Web Server
I'd gone to a summer conference in Canberra in mid-February 1994 (see
pg. 29 of https://www.tuhs.org/Archive/Documentation/AUUGN/AUUGN-V15.1.pdf
and https://minnie.tuhs.org/94Web/Canberra-AUUG/cauugs94.html, 10am)
and I'd seen the Mosaic web browser in action. With FreeBSD running on
minnie, it seemed like a good idea to set up a web server on her.
NCSA HTTPd server v1.1 had been released at the end of Jan 1994, see
http://1997.webhistory.org/www.lists/www-talk.1994q1/0282.html
It was the obvious choice to be the web server on minnie.
## Minnie from Then to Now
You can read more about minnie's history and her hardware/software
evolution here: https://minnie.tuhs.org/minnie.html
I obtained the "tuhs.org" domain in May 2000 and switched minnie's
domain name from "minnie.cs.adfa.edu.au" to "minnie.tuhs.org".
Cheers!
Warren
P.S. I couldn't wait until Friday to post this :-)
To expand on Branden's observation that translating from one member of the
roff family to another is hard, I note that the final output usually
presents a text in a shape that has been fine-tuned for appearance. In
grammatic terms it might best be presented in transformational terms a la
Chomsky: a basic text with a fairly simple grammar tweaked by
pretty-printing transforms.
Translation involves parsing input into an AST according to one grammar and
unparsing to generate output according to another. Chomsky's work uses
transformational grammars primarily for generation. I'm not aware of any
implementation of the inverse: parsing according to a transformational
grammar. Certainly no practical tools exist for doing so.
Unfortunately, one doesn't consciously write roff according to the model I
have outlined. This means that parsing it is more like parsing a natural
language than a strictly defined programming language. So, the absence of
formal tools is exacerbated. Roff scripts, like everyday English, are
written according to an intuitive--and occasionally ad hoc--grammar that
varies both with authors and with time. And seventy years of hard work has
not yet fully automated the parsing of English.
Doug
Doug McIlroy is still around and contributing…
With same insight & wry sense of humour :)
===========
<https://www.tuhs.org/mailman3/hyperkitty/list/tuhs@tuhs.org/message/X5P6FYM…>
> Apologies for posting the above title tonTUHS. It's not the first time that
> I've crossed signals between groff and TUHS, but hey, I've got 10 years on Biden.
>
> Doug
--
Steve Jenkin, IT Systems and Design
0412 786 915 (+61 412 786 915)
PO Box 38, Kippax ACT 2615, AUSTRALIA
mailto:sjenkin@canb.auug.org.au http://members.tip.net.au/~sjenkin
Apologies for posting the above title tonTUHS. It's not the first time that
I've crossed signals between groff and TUHS, but hey, I've got 10 years on
Biden.
Doug
Hello everyone, I'm currently laying the groundwork for a restart of my mandiff project, expanding it to encompass not just the manual-proper, but also the documents leading to the "Documents for UNIX" collections as well. Thus far I'm about halfway done on a ROFF restoration of the earliest surviving draft of Dennis Ritchie's The UNIX Time-Sharing System paper[1], reconstructed from existing, later NROFF text and ROFF conventions from the Third Edition manual[2].
Thus far, the additional documents I've found explicitly referenced in the earlier days are:
User's Reference Manual to B - K. Thompson[3]
C Reference Manual - D. M. Ritchie[4 - see note]
M6 Manual - A. D. Hall[5]
ROFF Manual - J. F. Ossanna[6 - see note]
A Manual for the TMG Compiler-writing Language - M. D. McIlroy[7]
UNIX Assembler Manual - D. M. Ritchie[8 - see note]
NROFF Users' Manual - J. F. Ossanna[9 - see note]
YACC Manual - S. C. Johnson[10 - see note]
Aside from these references, there are two other B papers, one a tutorial[11] by B. W. Kernighan and the other a MH-TSS reference by S. C. Johnson[12]. I don't think I saw either referenced in the manual-proper. The latter then makes further reference to a "Bell Laboratories BCPL" by R. H. Canaday and D. M. Ritchie, although I suspect this is lost, I can't find it.
Anywho, my plan is to take any known ROFF/NROFF sources for the above documents and reconstruct the earliest versions possible and then add them to my revamped repository in the timeframes that they first start showing up as references in the manual to derive a more holistic view of the creation of manuals and guides in the early days. A few matters prompted me to start over:
1. Noticing that there is direct lineage between some of the text in the UnixEditionZero paper and later manual pages like as(I), I want to capture the base text as far back as possible, which in this case would mean ensuring a commit in the chain captures the transfer of the text from the UnixEditionZero paper to as(I) to give a more complete history.
2. Al Kossow has now scanned and preserved a UNIX Program Generic II manual, meaning I no longer have to make as many assumptions about what changed and what didn't in the USG/Research split. Thus far, assumptions about the Program Generic line have been based on the extant MERT manual (which in turn is described as deriving from the Program Generic III manual.)
3. The picture of PWB/2.0 is becoming a bit clearer as time goes on, but is still murky, and that has implications for the changes between the Sixth Edition (where my current mandiff repo[13] ends) and the Seventh Edition. Rather than having to go back and redo a bunch of work, I think the first pass can stand on its own as a source of guidance on redoing this.
4. The cleanliness of the repository history is not to my liking, there are several instances of multiple commits across pages related to some larger, holistic change that would really be easier to study if they were in one. Starting over, I now have a much clearer picture of V1->V6 that I can use to produce a tighter history.
Anywho, to summarize what I'm looking for feedback on, first, are there any major documents I'm omitting from this investigation? Any particular technical memoranda that are crucial to the big picture? Additionally, is anyone aware whether USG Program Generic I (or earlier?) had a formal edition of the Programmer's Manual or if they would've just referred folks to the research manual prior to PG II? With the latter question I'm trying to determine if USG manual history starts with the PG II manual Al Kossow has scanned or if I should be considering a hole in the record where a PG I manual goes.
Thanks for following along, hopefully getting this groundwork in place will ensure the next go at this project is even more fruitful than the last!
- Matt G.
--- References ---
1 - https://www.tuhs.org/Archive/Distributions/Research/McIlroy_v0/UnixEditionZ…
2 - https://www.tuhs.org/cgi-bin/utree.pl?file=V3/man
3 - https://www.bell-labs.com/usr/dmr/www/kbman.html
4 - I may have a copy of the earliest version of this I can identify. The earliest version I can find online is dated January 15th, 1974 (https://www.bell-labs.com/usr/dmr/www/cman74.pdf) and contains the text "C is also available on the HIS 6070 computer at Murray Hill and on the IBM System/370 at Holmdel" whereas this particular copy of the paper states "C is also available on the HIS 6070 computer at Murray Hill, using a compiler written by A. Snyder and currently maintained by S. C. Johnson. A compiler for the IBM System/360/370 series is under construction." The manual is TROFF printout and isn't formatted as a memorandum like the link included here. References to the C Reference Manual begin to show up as early as the Second Edition manual, although these imply the C manual is still being written. Does anyone know if the C Reference Manual started in ROFF and then moved to NROFF some time before the earliest copies we're aware of? In any case, I intend to scan this copy, it just hasn't bubbled up in my project list yet.
5 - https://tuhs.pdp-11.org.ru/Documentation/TechReports/Bell_Labs/CSTRs/2.pdf
6 - I have a copy that defers from the one I could find here: https://www.cs.dartmouth.edu/~doug/roff71/roff71.pdf It is not in technical memorandum format and also may be missing a few pages (in mine, the tutorial ends with the "Translation" section but the linked document contains a couple more paragraphs on page offset (.po), merge patterns, and an envoi (conclusion). The most striking difference is that the linked paper is Doug's version for TSS, but the paper I've got lists the invocation in the UNIX style (roff +N -M name1 name2 ...) and is likely representative of the UNIX version with Joe Ossanna's work. Doug if you catch this and believe the attribution on this page (https://wiki.tuhs.org/doku.php?id=systems:2nd_edition) should have your by-line or both you and jfo, happy to make the edit. The text of the UNIX version I have does seem to descend from your original paper. By the way, an even earlier version of this paper for runoff is available here (https://manpages.bsd.lv/history/runoff69.low.pdf)
7 - https://www.tuhs.org/Archive/Distributions/Research/1972_stuff/tmg.pdf
8 - This is first referenced in the Third Edition manual. Some of the text may derive from the second Appendix of the "UnixEditionZero" paper linked above, the manpage certainly has influence from that document. Not sure if any of that implies the manual may have started in ROFF, but in any case, constitutes an early reference.
9 - This reference first appears, verifiably, in the Third Edition. However, the Second Edition manual does list nroff(I) in the TOC, but this page is not actually included in the extant PDF in the archive. In any case, the earliest version of the NROFF Users' Manual I'm aware of is the Second Edition, dated 9/11/74. Is any such First Edition extant on the public record?
10 - The earliest reference to this manual I can find is in the Third Edition. Not sure if there are any earlier specimens than the text in the Sixth Edition sources.
11 - https://www.bell-labs.com/usr/dmr/www/btut.html
12 - https://www.bell-labs.com/usr/dmr/www/bref.html
13 - https://gitlab.com/segaloco/mandiff