ブロックの呼び出し方
30分プログラム、その219。サブルーチンの呼び方を調べてみる。
id:hassylinさんから、
$f->(@_)を使われてますが、 &$fにしない理由とかあれば教えていただけると勉強になります。
というツコッミをうけたので調べてみた。
まず、リファレンス経由でサブルーチンを呼び出す場合、以下の3つの方法がある。
my $f = sub { ... }; &f(LIST); # デリファレンスして呼び出す $f->(LIST); # ->を使うと&を省略できる &$f; # 現在の@_をサブルーチンに渡す
最後の()を省略すると、@_が引数になるというのが実にPerlらしい。