emacs-bug-tracker
[Top][All Lists]
Advanced

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

bug#58727: closed (29.0.50; rx doc: Semantics of RX...)


From: GNU bug Tracking System
Subject: bug#58727: closed (29.0.50; rx doc: Semantics of RX...)
Date: Tue, 25 Oct 2022 02:50:02 +0000

Your message dated Tue, 25 Oct 2022 04:49:20 +0200
with message-id <87mt9klirz.fsf@web.de>
and subject line Re: 29.0.50; rx doc: Semantics of RX...
has caused the debbugs.gnu.org bug report #58727,
regarding 29.0.50; rx doc: Semantics of RX...
to be marked as done.

(If you believe you have received this mail in error, please contact
help-debbugs@gnu.org.)


-- 
58727: https://debbugs.gnu.org/cgi/bugreport.cgi?bug=58727
GNU Bug Tracking System
Contact help-debbugs@gnu.org with problems
--- Begin Message --- Subject: 29.0.50; rx doc: Semantics of RX... Date: Sun, 23 Oct 2022 04:32:17 +0200 User-agent: Gnus/5.13 (Gnus v5.13)
Hello,

please document the semantics of multiple RXs for the RX repetition
operators (and maybe grouping operators, too).

The resulting regexps are concatenating like with an implicit `seq'.
This is not trivial, though: in stringish regexps the repetition
operators are only unary, and different interpretations would make sense
for `rx' (implicit `seq', implicit `or').

The docstring of `rx' doesn't tell anything about this.  The manual has
sentences like

| ‘(zero-or-more RX...)’
| ‘(0+ RX...)’
|      Match the RXs zero or more times.  Greedy by default.
|      Corresponding string regexp: ‘A*’ (greedy), ‘A*?’ (non-greedy)

but that suffers from the same problem that the semantics of A are not
clear: A == (seq RX...) ?

Oh, and maybe let's also make more clear that `rx' always cares about
implicit grouping when necessary.  For example, in
(info "(elisp) Rx Constructs") it's not trivial that e.g. in

‘(seq RX...)’
‘(sequence RX...)’
‘(: RX...)’
‘(and RX...)’
     Match the RXs in sequence.  Without arguments, the expression
     matches the empty string.
     Corresponding string regexp: ‘AB...’ (subexpressions in sequence).

`rx' silently adds shy grouping to the result, and the corresponding string
regexp in this case is more precisely \(?:AB...\).  I think it is enough
to mention this implicit grouping feature once, but it is important to
spell it out.
  

TIA,

Michael.





--- End Message ---
--- Begin Message --- Subject: Re: 29.0.50; rx doc: Semantics of RX... Date: Tue, 25 Oct 2022 04:49:20 +0200 User-agent: Gnus/5.13 (Gnus v5.13)
Mattias Engdegård <mattias.engdegard@gmail.com> writes:

> > A sentence like "rx forms are defined by their semantics" would help
> > to make that clear I think.
>
> Well, I added a phrase to that effect as well.

Thanks - I hope it was not too much.

> Thank you for your comments and suggestions!

And thank you for the implementation of these!


Regards,

Michael.


--- End Message ---

reply via email to

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