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

Re: english names for symbolic SREs

This page is part of the web mail archives of SRFI 115 from before July 7th, 2015. The new archives for SRFI 115 contain all messages, not just those from before July 7th, 2015.

On Fri, Nov 29, 2013 at 12:35 AM, Michael Montague <mikemon@xxxxxxxxx> wrote:

I have an alternative suggestion for english names. After thinking about it lots more, I am not sure that there needs to be a one-to-one match between short names and english names, just the same expressive power.

How about 'maybe', 'greedy', and 'non-greedy':

? maybe
* (greedy 0 <sre> ...)
+ (greedy 1 <sre> ...)
>= (greedy <n> <sre> ...)
= (greedy <n> <n> <sre> ...)
** (greedy <n> <m> <sre> ...)
?? (non-greedy 0 1 <sre> ...)
*? (non-greedy 0 <sre> ...)
**? (non-greedy <n> <m> <sre> ...)

I prefer keeping the 1:1 correspondence between short names
and English names.  I also dislike the behavior changing on
the type and number of leading arguments.  If you want to
avoid lots of new names I suggest only providing names for
the ** case:

  (repeated <n> <m> <sre> ...)
  (non-greedy-repeated <n> <m> <sre> ...)

where the special cases can simply be written as their
existing ** equivalents:

? (repeated 0 1 <sre> ...)
* (repeated 0 #f <sre> ...)
+ (repeated 1 #f <sre> ...)
>= (repeated <n> #f <sre> ...)
= (repeated <n> <n> <sre> ...)

But I'll let the people who want English names fight
this out.