groff
[Top][All Lists]
Advanced

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

Re: [Groff] Hygienic mode design


From: Ingo Schwarze
Subject: Re: [Groff] Hygienic mode design
Date: Wed, 5 Mar 2014 03:03:58 +0100
User-agent: Mutt/1.5.21 (2010-09-15)

Hi Eric,

Eric S. Raymond wrote on Tue, Mar 04, 2014 at 08:12:45PM -0500:

> The semantics I had in mind allows unhygienic requests and macros
> to still be used inside macro definitions.
[...]
> That way you can define macros after a .hygiene call and they'll
> be visible unless you do another .hygiene call.

OK, so i'm using a macro set -mstrict that uses .hygiene
and doesn't declare the roff .dirty request as hygienic.

Now i make up my mind that using .dirty inside my document
would really be convenient.  Here is how i do it:

  .de clean
  .dirty
  ..
  .clean

> I'm still thinking this through.

My gut feeling is that your idea sounded cunning at first,
but is going to end up as a failure.  It looks likely that
you might end up inciting people to devise workarounds,
which will make actual documents even more ugly and miss
the original goal of restricting access to low-level requests.
If you allow additional macro sets to define additional macros
in terms of unhygienic low-level requests, how do you hope
to prevent documents from doing the same?

It looks like you are trying to solve a social problem -
design your documents in a responsible way, think about
which low-level features you are using and what the consequences
are - using technical means, i.e. actually technically preventing
authors from using stuff.

Maybe what is needed here is not technical restrinctions in the
actual language, but just simple, stand-alone validator(s)
telling authors "yes, your document is clean -mstrict" or "no,
please consider not using .dirty on line 321 if you expect
this to work with all (in particular semantic) -mstrict parsers".

Yours,
  Ingo



reply via email to

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