[TUHS] Proliferation of options is great simplification of pipes, really?

Will Senn will.senn at gmail.com
Mon Feb 22 12:34:55 AEST 2021


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

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).

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.

Regards,

Will
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://minnie.tuhs.org/pipermail/tuhs/attachments/20210221/3cf98b52/attachment.htm>


More information about the TUHS mailing list