Follow-up Comment #2, bug #66686 (group groff):

[comment #1 comment #1:]
> I feel that this report is a close sibling of Paul Eggert's regarding
> the `|` character. 

Agreed: it's basically the same bug with a different delimiter.

> I walked that one back because `|` is known in the wild as a delimiter.

OK, but presuming we have, or ever can have, anything close to a complete
picture of "the wild" is folly.

> Agreed, it does not.  But it might _appear in one_.

True.  However:

> .nr desired-len 2n+\w+abc+u
> .nr another-desired-len \w+abc+u+2n
> .nr yet-another-desired-len \w+abc++2n
> .nr double-desired-len \n[desired-len]+\w+abc++2n

These have unambiguous parsings to anyone who understands roff precedence
rules.  Pardon me, rule.

> When Clark implemented GNU troff, he
> clearly _intended_ to take some delimiters off the table.

Meaning he intended to one day, or that he _did_?

If the former, I'd argue his code is more relevant to users than his
intentions.

If the latter, whatever delimiters he did revoke, the + (at least as a
delimiter to \w) wasn't one of them.  It's worked in groff for decades, and it
works in at least one peer roff--points more salient and testable than any
future directions Clark intended.

> I'd link to
> 
> https://git.savannah.gnu.org/cgit/groff.git/tree/?h=1.23.0
> 
> but Savannah's been undergoing a DDoS for the past several days and the
> service is unavailable.

The link worked as of the moment I clicked it, but I'm afraid I don't
understand what you're driving at with it.

> My intent with that commit was not to forbid more delimiters (hence my
> use of the word "refactor"), and I'm not sure that it did.

Right, that commit (from March) alone didn't do it: the + works in my groff
build from August.  This is why I suspect the bug #63142 fix, which got pushed
a few days after I did that build, and explicitly mentions new delimiter
checks as a "bonus" in its commit message.

> However I may be tempted to just "NEWS" this because I don't think many
> people use expression operators as delimiters.

You may be right about its usage.  But the counter to that is, why break
something without notice that used to work even for not-many people, when the
deprecation cycle that bug #66481 lays out for a swath of other delimiters
(many of which surely get even less use) could also apply to this one?  (This
cycle is outlined in prose in comment 9 there, and was added in code comments
to src/roff/troff/input.cpp by that bug's commit.)


    _______________________________________________________

Reply to this item at:

  <https://savannah.gnu.org/bugs/?66686>

_______________________________________________
Message sent via Savannah
https://savannah.gnu.org/

Attachment: signature.asc
Description: PGP signature

Reply via email to