作者: 川合孝典
日時: 2007/9/10(20:32)
川合孝典です。

----- Original Message -----
>Date: Mon, 10 Sep 2007 15:57:11 +0900 (JST)
>From: wtnabe@... (ねこ丸)
>Subject: [TSperl:846] ハッシュのキーの指定方法
>To: TSperl@...
>
>  ねこ丸です。
>
>  またくだらない疑問なのですが教えてください。
>
> Perl で、Hash の「ある key」を指定する場合、
>
>  my %hash = ();
>  $hash{'key1'} = 'val';    # (i)
>  $hash{key2}   = 'val2';   # (ii)
>
>  i と ii のどちらが正しいんでしょうか?
>  どちらも正しいんでしょうか?

どちらも正しいでしょう。

今、第2版しか手元にないので第3版では確認していませんが。
プログラミング Perl 2.3.2.2 文字列リテラル(P46)に

 事実、このような("${verb}able!"のような)ブレースの中の識別子は
 文字列に変換される。これはハッシュの添え字に使われる単独の識別子の
 場合と同様である。例えば、
  $days{'Feb'}
 は、
  $days{Feb}
 のように書いても良い。この場合、クォートがあるものと自動的に仮定される
 しかし、添字にこれより複雑なものを書くと式として解釈される

とあります。
perldataにも同じような記述があるみたいですね。

perldata (perldoc.jp)
http://perldoc.jp/docs/perl/5.8.8/perldata.pod