On Mon Jun 04 19:09:06 2012, RJBS wrote:
Show quoted text> RDF/Prefixes.pm uses a single apostrophe for the qr delimiter. This
> is *supposed* to be
> noninterpolative. That it interpolates is a bug.
As Yves Orton said at one point, is that a fact, or a ruling from above? To which I responded:
Is there any difference? I think there is a difference, now. :-)
Show quoted text> Your use of it
> interpolates.
>
> When the bug is fixed, your code will break.
>
> You should switch the qr delim.
Which of these three lines are you referring to?
$ ack qr\'
lib/RDF/Prefixes.pm
20: $r_nameStartChar = qr'[A-Za-z\x{00C0}-\x{00D6}\x{00D8}-\x{00F6}\x{00F8}-
\x{02FF}\x{0370}-\x{037D}\x{037F}-\x{1FFF}\x{200C}-\x{200D}\x{2070}-
\x{218F}\x{2C00}-\x{2FEF}\x{3001}-\x{D7FF}\x{F900}-\x{FDCF}\x{FDF0}-
\x{FFFD}\x{00010000}-\x{000EFFFF}]';
21: $r_nameChar = qr'${r_nameStartChar}|[-_0-9\x{b7}\x{0300}-\x{036f}\x{203F}-
\x{2040}]';
22: $r_prefix = qr'${r_nameStartChar}${r_nameChar}*';
Those with ${} look like bugs in the module, to me (without looking closely). In that case, the
module is already buggy, and won’t get worse, as $ already doesn’t interpolate in qr''.
If you are referring to line 20, then \x{} is already part of regexp syntax itself, so I wouldn’t
consider that a bug.