In <[EMAIL PROTECTED]>, Perl6 RFC Librarian writes:
:The basic idea is to expand an array as a list of alternatives.  There
:are two possible syntaxs (?@foo) and just plain @foo.  @foo might just have
:existing uses (just), therefore I prefer the (?@foo) syntax.

That needn't be a problem, that's why all RFCs have a migration section. :)

:(?@foo) is just syntactic sugar for (?:(??{ join('|',@foo) })) A bracketed
:list of alternatives.

Is this not constructed at regexp compile time? If so, it is more
like @{[ join('|',@foo) ]}.

:Suggested syntax:
:
:(?Q$foo) Quotes the contents of the scalar $foo - equivalent to
:(??{ quotemeta $foo }).
:
:(?Q@foo) Quotes each item in a list (as above) this is equivalent to
:(?:(??{ join ('|', map quotemeta, @foo)})).
:
:In this syntax the Q is used as it represents a more inteligent \Quot\E.

I think it has been stated before that (?Q is reserved along with
other letters for possible regexp flags.

Hugo

Reply via email to