in reply to Re^3: ::'s role in strings
in thread ::'s role in strings

I'm not surprised at all. Double quoted strings are bad in some shells, as '$a' might be processed by the shell, not by perl, therefore, might result in a shell error.

$ perl -v This is perl, v5.8.6 built for darwin-thread-multi-2level (with 2 registered patches, see perl -V for more detail) ... $ perl -e "$a = Class::; print $a" syntax error at -e line 1, near "=" Execution of -e aborted due to compilation errors. $ perl -e '$a = Class::; print $a' Class

Update: inserted word 'some'

Replies are listed 'Best First'.
Re^5: ::'s role in strings
by ikegami (Patriarch) on Apr 27, 2006 at 19:28 UTC
    Double quoted strings are bad in shells, as '$a' might be processed by the shell,

    That bit is false. Double quotes are required by my shell. $ does not have a special meaning for it, and single-quoting the argument does not work. Your statement should read:

    Double quoted strings are bad in some shells, as '$a' is processed by them,

    I'm sure you're right that double-quoted strings are bad for his shell (and it, not perl, produced the error he posted).