groff
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [groff] More on stripping


From: Ingo Schwarze
Subject: Re: [groff] More on stripping
Date: Wed, 14 Mar 2018 18:45:02 +0100
User-agent: Mutt/1.8.0 (2017-02-23)

Hello Doug,

Doug McIlroy wrote on Sun, Mar 11, 2018 at 11:29:45PM -0400:

> So I put together a -ms test with no preprocessors.
> The input was about 1 MB, comprising 30K lines
> of which 8000 were macro calls. I padded every line of
> s.tmac that did not end in \ or \c with a 32-character
> comment. Thus macro expansions were laden with comments.
> 
> The variance in running times pretty well swamped
> the difference between -ms padded and unpadded.
> The difference was at most a few percent.
> 
> With Peter preferring to distribute -mom unstripped,
> it's hard to find an argument for default stripping.
> Maybe mandoc doesn't want to give it up.

Quite to the contrary.

groff_mom(7) = contrib/mom/om.tmac-u has more than twice the size
of groff_mdoc(7) = tmac/doc*-u, and groff_man(7) = tmac/an-old.tmac
isn't even stripped in the first place.  So i really wouldn't see
the point in stripping manual page macros if even the comprehensive
and carefully documented mom package no longer wants to strip.
If i remember (and re-read) past discussions correctly, mom was
the chief argument for stripping, e.g.
  https://lists.gnu.org/archive/html/groff/2017-11/msg00105.html

If the argument is that groff_mom(7) is typically only run rarely,
on larger documents, after some editing is done, such that speed
doesn't matter as much as for manual pages which are often rendered
in real time when people interactively type man(1), that doesn't sound
very convincing to me either.  After all, practically all the operating
systems having large numbers of mdoc(7) manual pages use mandoc(1)
rather than groff(1) inside man(1), while those predominantly using
man(7) already have no stripping benefit right now, which applies to
most Linux distributions and some commercial UNIXes like Solaris 11.
Besides, quoting from
  https://lists.gnu.org/archive/html/groff/2017-11/msg00070.html
  I already did measurements two years ago and found no
  examples of manual pages where the time economy exceeds 20%.

I'm not saying we absolutely *must* stop stripping, but i would
certainly still like it, and i'm quite conviced that manual pages are
not the primary use case that requires stripping of macro sets.
Honestly, not even if hell freezes over and Michael Kerrisk switches
the Linux man pages project to mdoc(7).

Yours,
  Ingo



reply via email to

[Prev in Thread] Current Thread [Next in Thread]