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=-1.1 required=5.0 tests=DKIM_SIGNED,DKIM_VALID, DKIM_VALID_AU,FREEMAIL_FROM,MAILING_LIST_MULTI,NICE_REPLY_A, RCVD_IN_DNSWL_NONE autolearn=ham autolearn_force=no version=3.4.4 Received: (qmail 11716 invoked from network); 22 Feb 2021 04:35:29 -0000 Received: from minnie.tuhs.org (45.79.103.53) by inbox.vuxu.org with ESMTPUTF8; 22 Feb 2021 04:35:29 -0000 Received: by minnie.tuhs.org (Postfix, from userid 112) id 4CDD79CA96; Mon, 22 Feb 2021 14:35:15 +1000 (AEST) Received: from minnie.tuhs.org (localhost [127.0.0.1]) by minnie.tuhs.org (Postfix) with ESMTP id 9FC1E9CAF6; Mon, 22 Feb 2021 14:34:17 +1000 (AEST) Authentication-Results: minnie.tuhs.org; dkim=pass (2048-bit key; unprotected) header.d=gmail.com header.i=@gmail.com header.b="BmtHLSTm"; dkim-atps=neutral Received: by minnie.tuhs.org (Postfix, from userid 112) id E844B9CAF3; Mon, 22 Feb 2021 14:34:15 +1000 (AEST) Received: from mail-ot1-f49.google.com (mail-ot1-f49.google.com [209.85.210.49]) by minnie.tuhs.org (Postfix) with ESMTPS id 0AF2F9CA9E for ; Mon, 22 Feb 2021 14:34:13 +1000 (AEST) Received: by mail-ot1-f49.google.com with SMTP id s3so7661935otg.5 for ; Sun, 21 Feb 2021 20:34:12 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=subject:to:references:from:message-id:date:user-agent:mime-version :in-reply-to:content-transfer-encoding:content-language; bh=v38ED9OaCdsYSPdT+wiLJ3+4JMj4J7mTwkDQ1ueeq/k=; b=BmtHLSTmKB4wTqJ9HOSzo35WIYVglwWNtcdTaY7NaoZSmePM4fmbymKYPY/bB1mKYy XnXDO5dADVPjoOcu6XSx6zOk2dgfVXA6tDmT5BlqMMDctIqp7CSaiG6ERr6sKwRszhQZ 9yIzu2vHmUG9FotEJRgkC84Ia7VmOhiZbF7up+2ew331lDdDORFcLRpsUc7IPDUjpth1 QSNAx5AiXi66sxyX65vPqOxCmneCXCOsF3SMezDzdu0mm/HVAPGt99cZtD6Nc5p2JhMd /oxYEXDxWcW2dh4uNle9TS7QR3lano9J96n4hgT+k0yKRN2/a9EIvDtOqVqbVvDQSQbI 4+UQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:subject:to:references:from:message-id:date :user-agent:mime-version:in-reply-to:content-transfer-encoding :content-language; bh=v38ED9OaCdsYSPdT+wiLJ3+4JMj4J7mTwkDQ1ueeq/k=; b=ZNaHy8Yr60PPrAPsEo3a/ULniiogGqFu2B/IZKlRZzBS/RsvUUQoFYRqb1vU4viiUV 2Fp58AruPSbVG0K9wW9KHuJNRJoaZJ2jcHSCK0ErJyKnX6gL4MZP/ySs+r0YeBjpjEX5 mgKPUC5h5f661KIFqKcA59d3zqPu1XUzC+YdBzazOuBCxoWpmFNkEH2e/JiBP1h6JMF1 mTo9PMQ9wi/2d04weBwfRFB/MpbxKfyt9DXk70/00KxkHx4XiCglULdTuPkQbzp30WwN OfIeCmSFvsj4hS+yZb4kBcykB6PW21D6a3zmGx8JNqc5m5WKpmfShEodZw5ikVbHinPW GvQA== X-Gm-Message-State: AOAM530mz/thyD5/X7t5FmbCU9KVzLcJQoppea73c+t701IzgSondFuv A7UzHB9qVqaU2BJ/6YN1d2OehPrzMZPQvw== X-Google-Smtp-Source: ABdhPJy23mglKl3cg+iALjgxvHVm+00rRXy8OeMuIRo70YRj1m2bDAVx+u356UHUIqCzEOyhVBkY4Q== X-Received: by 2002:a9d:640b:: with SMTP id h11mr15085260otl.224.1613968451919; Sun, 21 Feb 2021 20:34:11 -0800 (PST) Received: from terra.local (99-139-148-170.lightspeed.rcsntx.sbcglobal.net. [99.139.148.170]) by smtp.gmail.com with ESMTPSA id o11sm2388968oti.63.2021.02.21.20.34.11 for (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Sun, 21 Feb 2021 20:34:11 -0800 (PST) To: tuhs@minnie.tuhs.org References: <20210222033217.dkqavclp22sa77ln@localhost.localdomain> From: Will Senn Message-ID: <6621ba33-1a45-b074-a3ef-26671360d949@gmail.com> Date: Sun, 21 Feb 2021 22:34:10 -0600 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.14; rv:78.0) Gecko/20100101 Thunderbird/78.7.1 MIME-Version: 1.0 In-Reply-To: <20210222033217.dkqavclp22sa77ln@localhost.localdomain> Content-Type: text/plain; charset=windows-1252; format=flowed Content-Transfer-Encoding: 8bit Content-Language: en-US Subject: Re: [TUHS] Proliferation of options is great simplification of pipes, really? 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: , Errors-To: tuhs-bounces@minnie.tuhs.org Sender: "TUHS" On 2/21/21 9:32 PM, G. Branden Robinson wrote: > At 2021-02-21T20:34:55-0600, Will Senn wrote: >> All, >> >> So, we've been talking low-level design for a while. I thought I would >> ask a fundamental question. In days of old, we built small >> single-purpose utilities and used pipes to pipeline the data and >> transformations. Even back in the day, it seemed that there was >> tension to add yet another option to every utility. Today, as I was >> marveling at groff's abilities with regard to printing my man pages >> directly to my printer in 2021, I read the groff(1) page: >> >> example here: https://linux.die.net/man/1/groff > A more up to date copy is available at the Linux man-pages site. > > https://man7.org/linux/man-pages/man1/groff.1.html I just picked the first hit in google :) shoulda known better. However, it's the same text that's in my mac's install (Mojave). > >> What struck me (the wrong way) was the second paragraph of the >> description: >> >> The groff program allows to control the whole groff system by command >> line options. This is a great simplification in comparison to the >> classical case (which uses pipes only). > What strikes _me_ about the above is the awful Denglish in it. I fixed > this back in 2017 and the correction shipped as part of groff 1.22.4 in > December 2018. Mac Mojave: Groff Version 1.19.2              3 July 2005                         GROFF(1) >> Here is the current plethora of options: >> groff [-abcegilpstzCEGNRSUVXZ] [-d cs] [-f fam] [-F dir] [-I dir] [-L arg] >> [-m name] [-M dir] [-n num] [-o list] [-P arg] [-r cn] [-T dev] [-w name] >> [-W name] [file ...] >> >> Now, I appreciate groff, don't get me wrong, but my sensibilities were >> offended by the idea that a kazillion options was in any way simpler >> than pipelining single-purpose utilities. What say you? Is this the >> perfected logical extension of the unix pioneers' work, or have we >> gone horribly off the trail. > I'd say it's neither, and reflects (1) the limitations of the Unix > filter model, or at least the linear topology of Unix pipelines[1]; and > (2) an arbitrary set of rules determined by convention and common > practice with respect to sequencing. snip... Very informative post, Branden. I appreciate the details. I gotta read more code :). Will