in reply to Hash Syntax Question

Yes, there's a difference. $hash{OneWord} is OK, but $hash{Two Words} is a syntax error.

From perldata (emphasis mine):

In fact, an identifier within such curlies is forced to be a string, as is any simple identifier within a hash subscript. Neither need quoting. Our earlier example, $days{'Feb'} can be written as $days{Feb} and the quotes will be assumed automatically. But anything more complicated in the subscript will be interpreted as an expression. This means for example that $version{2.0}++ is equivalent to $version{2}++ , not to $version{'2.0'}++
So, if it looks like an identifier, you don't need to quote it.

Replies are listed 'Best First'.
Re^2: Hash Syntax Question
by Anonymous Monk on Jul 25, 2007 at 20:54 UTC
    also be aware of the following little gotcha:

    perl -wMstrict -e "my %h; $h{shift} = 'foo'; print %h" bar shiftfoo perl -wMstrict -e "my %h; $h{shift()} = 'foo'; print %h" bar barfoo
Re^2: Hash Syntax Question
by BarMeister (Beadle) on Jul 25, 2007 at 20:21 UTC
    ok thanks that was very helpful :-)