On Thu, Jul 05, 2012 at 02:39:00PM +0200, Moritz Lenz wrote:
> Am 05.07.2012 07:11, schrieb Patrick R. Michaud:
> >1. ? quantifier in regexes
> >
> >The C<?> quantifier used to be specified to capture matches
> >in the same manner as C<*> and C<+> -- that is, it produced
> >a List of Match objects in its capture slot (either named
> >or positional).
> >
> >The current version of the specification says that a ?-quantified
> >capture fills the slot with either a single Match object or Nil.
> >made (in Rakudo and in Rakudo Star)?
>
> I don't think there's a good way to provide both old and new behavior,
> so we should announce the upcoming breakage in the announcement of a
> star release, merge the change shortly after a compiler release (to
> give module authors time for updates), and then in the next star
> release, announce the fact of the breakage again.
If I'm understanding you correctly, this means that the earliest
release with a fix for the ? quantifier would be 2012.08 .
> I don't think it's reasonable to give users a larger head start,
> since they can't really prepare for that change before it's in the
> compiler.
They can prepare, by changing existing uses of the ? quantifier
to ** 0..1, as in:
/ <abc>? / becomes / <abc> ** 0..1 /
> >2. Leading whitespace in rules and :sigspace
> >
> >A previous version of :sigspace (and hence 'rule') caused
> >_all_ whitespace in a regex to be treated as significant [...]
> >The current regex syntax definition changes this such that
> >whitespace following certain constructs is no longer significant [...].
> > rule xyz { <?> x y z }
> Or
> rule xyz { <.ws> x y z }
> which, IMHO, better communicates the intent.
Except that it ends up calling <.ws> twice (once for the <.ws>,
and once for the whitespace after the <.ws>).
> >Again, how do we inform users of this change, and when should it be made?
>
> Same as above.
So, again, not until 2012.08.
Pm