http://qs321.pair.com?node_id=11116792

I knew that you could use :: to make sure that a package name wasn't used as a subroutine, but I didn't really understand what it did.

$ perl -MO=Deparse -e '$x = anything_could_go_here::' $x = 'anything_could_go_here'; -e syntax OK

Just like single quotes?

TIMTOWTDI I guess...

So we have

q{} '' => :: qw{} - (as in -bareword)

And of course

no strict; $x = bareword;

not to mention

"" and qq{} `` and qx{}

Somebody will tell me that I missed some, I'm sure.