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

updated draft

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.



The new draft is available at:

  http://srfi.schemers.org/srfi-115/srfi-115.html

If you gave feedback you were expecting
to be addressed, please double check that it was.

In the background I've tried to tone down the
importance of regexps while expanding very
briefly on their history.  Specifically, their
raison d'être is that they can be matched
efficiently.

I've removed the string argument to the
rx-match-* functions and renamed them
regexp-match-* as discussed.  The primary
matching functions are now:

  regexp-search
  regexp-matches
  regexp-matches?

I removed the backtracking-specific SREs
if, atomic and commit, because they are
specific to the particular backtracking algorithm
they are used with and thus too difficult to
specify.

The remaining extended features I've split
into regexp-non-greedy and regexp-look-around.
There is still debate whether the features should
be provided at all.

I've given a more concrete definition of
grapheme clusters, and noted that case
insensitive matching does not have to take
into account characters with a non 1:1 mapping
like ß.  I still need to expand more on Unicode
word boundaries.

Mutating a string that was matched now invalidates
any regexp-match results, and likewise mutating
an SRE invalidates any regexps compiled from it.

-- 
Alex