> =head1 ABSTRACT
>
> Remove all interpolation within single quotes and the C<q()> operator, to
> make single quotes 100% shell-like. C<\> rather than C<\\> gives a single
> backslash; use double quotes or C<q()> if you need a single quote in your
> string.
Yes. If people really need single quotes inside single quotes, why not
just put them in q() ??
$need_singles = q(Why don't y'all just put 'em in here?);
The difference between '' and q() is that the second is a more flexible
alternative. If you really need to put single quotes inside single
quotes, use it.
But '' and q() should become true strict single quotes. Having them do \
interpolation is not good, it defeats the notion. It was needed in the
past, but now there's q(), so it's not needed anymore.
Migration with this is fairly easy, run something like this:
s/'(.*?\\'.*?)'/q($1)/g;
in the translator script. This doesn't catch all the cases, but writing
a more comprehensive one shouldn't be too hard.
-Nate