From mboxrd@z Thu Jan 1 00:00:00 1970 X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) on inbox.vuxu.org X-Spam-Level: X-Spam-Status: No, score=-0.8 required=5.0 tests=DKIM_ADSP_CUSTOM_MED, DKIM_INVALID,DKIM_SIGNED,FREEMAIL_FROM,HTML_MESSAGE,MAILING_LIST_MULTI autolearn=ham autolearn_force=no version=3.4.4 Received: (qmail 30146 invoked from network); 12 Jan 2022 16:34:31 -0000 Received: from minnie.tuhs.org (45.79.103.53) by inbox.vuxu.org with ESMTPUTF8; 12 Jan 2022 16:34:31 -0000 Received: by minnie.tuhs.org (Postfix, from userid 112) id 0ED5A9D00D; Thu, 13 Jan 2022 02:34:30 +1000 (AEST) Received: from minnie.tuhs.org (localhost [127.0.0.1]) by minnie.tuhs.org (Postfix) with ESMTP id A34DB9CFCA; Thu, 13 Jan 2022 02:34:14 +1000 (AEST) Authentication-Results: minnie.tuhs.org; dkim=fail reason="signature verification failed" (2048-bit key; unprotected) header.d=gmail.com header.i=@gmail.com header.b="IrO056Kf"; dkim-atps=neutral Received: by minnie.tuhs.org (Postfix, from userid 112) id 387849CFCA; Thu, 13 Jan 2022 02:34:13 +1000 (AEST) Received: from mail-oi1-f172.google.com (mail-oi1-f172.google.com [209.85.167.172]) by minnie.tuhs.org (Postfix) with ESMTPS id B89299C78F for ; Thu, 13 Jan 2022 02:34:12 +1000 (AEST) Received: by mail-oi1-f172.google.com with SMTP id s9so4002398oib.11 for ; Wed, 12 Jan 2022 08:34:12 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc; bh=thgihfoJupoXrRaPdrO6ZgqenE8/ak9URR2RmcTH2wA=; b=IrO056KfhXKUjh/V0hk8avKrBb81aARUWODwqf2cn4PXxWhMVUUGKhxgeftRyo4SpP hpaxt6HXQc0cumtrlxd+fasNdb3nXyySg1Xw5IBRRjEEm/qGEnr/iSoVAz4p/bqLA+J9 pj64DQz2SRbMOiKYYD/3ITQqhz1fnxC3VwJsZ7NjINyPY6QMs8MromABUlxkB8QnuNT4 BlBNpXgQRc50N6Drx4ufwA8D1VaTCSCvo50C4EFsNCSl8CLkIqUsOD6MKg01dATPdfkd 8rmJRtmxbchkezoiXJeyRNoFpJuc26jerNKe3/lh1zgF2JWTNQJlq1nSnQUAEfT9ApFJ I4xQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=thgihfoJupoXrRaPdrO6ZgqenE8/ak9URR2RmcTH2wA=; b=qyVUyg+Z6EkT4XaVm7jGRwOx4kMBsSMs1uDGDOTlNGGyjQjcf9bjxTzJLKUlzmxajm YWAimLV85d+OtvYvPUsOVMkRYe+7pi2axhdRJHq0vsTOeGJ972d78W57r5Aoxp2NlJEK 0uixQ52gLhvvkByvDTI4Ve9+UxOVRsB4IxhgMA+2R2VQyZCEkG6DAmWsqkQ7Gx/PEYH+ VDJFwhORRTWbfs2wEjnU6nvQI/pfRMdMT31CSRkexZHxCGkRDQy3pL9TK0FU60QXvmMd 9g/8Rl+8/TFiErqM6pFclzwbCt+PNtE64J7bo8Y/UOzkLej7lEgoufeTVWDDVeUq3Rlq xPIA== X-Gm-Message-State: AOAM532KK2Cs9ATr9gdl4yBzd1hfUTkfVZNz3yabgoh99yFtsyTiPzYE /ntEykgFXxF0x1zYjqIP954xI13y7XqTQIejIUI= X-Google-Smtp-Source: ABdhPJz2okmtZdZ7gNEqi2kzRY5EaLxgPbH0qreAMiiRxlLy+Mhs4jwBKAw5f/W1Kif3czlUtCIjqlUaa8YnEVQg9/0= X-Received: by 2002:a05:6808:643:: with SMTP id z3mr239208oih.110.1642005251967; Wed, 12 Jan 2022 08:34:11 -0800 (PST) MIME-Version: 1.0 References: <20211231234039.GU31637@mcvoy.com> <20220101005605.GL75481@eureka.lemis.com> <20220101031511.GB8135@mcvoy.com> <20220111015901.GE25103@eureka.lemis.com> <4409b91cd794867d@orthanc.ca> <20220111024218.GE3441@mcvoy.com> <202201120854.20C8sDRR014233@freefriends.org> In-Reply-To: <202201120854.20C8sDRR014233@freefriends.org> From: Dan Cross Date: Wed, 12 Jan 2022 11:33:35 -0500 Message-ID: To: Aharon Robbins Content-Type: multipart/alternative; boundary="000000000000c34ea905d565238a" Subject: Re: [TUHS] Demise of TeX and groff (was: roff(7)) X-BeenThere: tuhs@minnie.tuhs.org X-Mailman-Version: 2.1.26 Precedence: list List-Id: The Unix Heritage Society mailing list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: The Eunuchs Hysterical Society Errors-To: tuhs-bounces@minnie.tuhs.org Sender: "TUHS" --000000000000c34ea905d565238a Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable On Wed, Jan 12, 2022 at 3:55 AM wrote: > [snip] > Perhaps Doug can set the history straight on troff. Here is my > understanding, > corrections (from Doug) welcome: > > - Ossanna wrote the original nroff in assembly language > - He rewrote it in C when the C/A/T was acquired > At that time nroff/troff were built from mostly the same sources (as > can be seen in the archives). > I have some questions about the earlier history. As I understand it, in the beginning there was RUNOFF, which I believe originated on CTSS? The CTSS sources contain a RUNOFF program that's made up of ~1100 lines of MAD and ~1300 lines of assembler. There is certainly a RUNOFF in Multics, written in BCPL (there's a small "outer module transfer vector" program in ALM). This is where it gets muddy for me; I understand this was roughly ported to unix as `roff` by Ken and that at this point, formatting was fairly primitive: suitable for hardcopy terminals and line printers, and could do things like center lines and so forth, but nothing fancy (https://www.cs.dartmouth.edu/~doug/reader.pdf). Ossanna then took over and greatly expanded the capabilities of `roff`, adding macros and traps and making it Turing-complete; this was `nroff`, which grew to become `troff` once the C/A/T typesetter was acquired. Section 4.1 ("Text Processing") of Doug's "Research Unix Reader" above includes some tantalizing tidbits, particularly this, regarding `troff`: "It blew the manufacturer=E2=80=99s mind, and touched off a flurry of homemade documents in flamboyant layouts=E2=80=94good enough, however, to fool referees into suspecting that= the manuscripts had been published before." Ooo, that last bit sounds like a good story! Doug, can you tell us more? - Dan C. PS: Something came up on the Multics mailing list recently that may be of local interest. Someone was looking for a set of troff macros used internally by Honeywell for the preparation of technical documentation and memoranda and it was asked whether this had been done on Multics? Apparently, `troff` never made it back to its ancestor's home, even though at some point circa the SVR2 era a C compiler was ported and it would have been, perhaps, possible. The answer to the original question was that that documentation had been prepared on a Unix machine of some kind; the macros seem lost to time. --000000000000c34ea905d565238a Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable
On Wed, Jan 12, 2022 at 3:55 AM <arnold@skeeve.com> wrote:
<= div class=3D"gmail_quote">
[snip]
Perhaps Doug can set the history straight on troff. Here is my understandin= g,
corrections (from Doug) welcome:

- Ossanna wrote the original nroff in assembly language
- He rewrote it in C when the C/A/T was acquired
=C2=A0 At that time nroff/troff were built from mostly the same sources (as=
=C2=A0 can be seen in the archives).

I = have some questions about the earlier history.

As = I understand it, in the beginning there was RUNOFF, which I believe origina= ted on CTSS? The CTSS sources contain a RUNOFF program that's made up o= f ~1100 lines of MAD and ~1300 lines of assembler. There is certainly a RUN= OFF in Multics, written in BCPL (there's a small=C2=A0"outer modul= e transfer=C2=A0vector" program in ALM). This is where it gets muddy f= or me; I understand this was roughly ported to unix as `roff` by Ken and th= at at this point, formatting was fairly primitive: suitable for hardcopy te= rminals and line printers, and could do things like center lines and so for= th, but nothing fancy (https://www.cs.dartmouth.edu/~doug/reader.pdf). Ossanna=C2=A0then= took over and greatly expanded the capabilities of `roff`, adding macros a= nd traps and making it Turing-complete; this was `nroff`, which grew to bec= ome `troff` once the C/A/T typesetter was acquired.

Section 4.1 ("Text Processing") of Doug's "Research Un= ix Reader" above includes some tantalizing tidbits, particularly this,= regarding `troff`: "It blew the manufacturer=E2=80=99s
mind, and= touched off a flurry of homemade documents in flamboyant layouts=E2=80=94g= ood enough, however, to fool referees into suspecting that the manuscripts = had been published before." Ooo, that last bit sounds like a good stor= y! Doug, can you tell us more?

=C2=A0 =C2=A0 =C2=A0 =C2=A0 - Dan C.

PS: Something came = up on the Multics mailing list recently that may be of local interest. Some= one was looking for a set of troff macros used internally by Honeywell for = the preparation of technical documentation and memoranda and it was asked w= hether this had been done on Multics? Apparently, `troff` never made it bac= k to its ancestor's home, even though at some point circa the SVR2 era = a C compiler was ported and it would have been, perhaps, possible. The answ= er to the original question was that that documentation had been prepared o= n a Unix machine of some kind; the macros seem lost to time.
--000000000000c34ea905d565238a--