On Fri, 15 Mar 2019 16:03:28 +0000 Ralph Corderoy <ra...@inputplus.co.uk> wrote:
> > Of course it's a valid comparison. Which sed or awk or shell script > > is distributed in a stripped/compressed form? Do they store their > > AST somewhere, so as to avoid recompilation? They do not. Just as > > with groff, every parse starts anew. > > It seems you're not aware that groff runs the source. It doesn't have > an intermediate representation like those other commands I listed. > Thus every invocation of a macro, or iteration around a loop, reads > each character anew. You seem to be saying there's some significance to groff's internal representation, or lack thereof. Why? I doubt it makes any measurable difference. Parsing likely dominates performance in languages that execute relatively few loops. If I'm wrong, and the lack of an internal efficient representation is actually a dramatic drag on performance, then surely the solution lies not in compressing macro sources, but in improving the software, so that the benefit accrues to all, compressed and not. --jkl