これはPerlのV5.20でエラーがスローされます:なぜ `map`ブロック内に補間がありませんか?
use strict;
use warnings;
my @a = (2,3,9);
my %b = map { "number $_" => 2*$_ } @a;
エラー:
syntax error at a.pl line 4, near "} @a"
Execution of a.pl aborted due to compilation errors.
これにはない:
use strict;
use warnings;
my @a = (2,3,9);
my %b = map { "number ".$_ => 2*$_ } @a;
なぜmap
ブロック内で許可されていない$_
の補間があります?
のPerl、使用している構文を決定する必要があります。
そうではありません補間。 '$ _'を文字列から削除すると、それでもエラーがスローされます。 – simbabque
BLOCKの中にかっこを入れると便利です。 – simbabque
@HåkonHæglandだから、 '{; "number $ _" => 2 * $ _} '代わりに、そうですか? – jlovegren