4.11.1 アンパーサンドを省略する

これまたid:TransFreeBSDさんに教わった
サブルーチン呼び出し時のアンパーサンド(&)*1の省略が
出てきました。


注意する点は以下。

  • サブルーチンの起動より後ろでサブルーチンを起動すると、Perlが起動されるdivisionの正体をわからないので、省略できない場合もある。
  • もしサブルーチン名がPerlの組み込み関数と同じ名前だったら、それを呼び出すには必ずアンパーサンドを付けなければならない。

後者は、とくに初心者の内は気をつけないと。
Perlがバージョンアップして、過去のソースを新しいバージョンで
コンパイルしなくてはならない場合に、
もし新しくPerlの組み込み関数になったサブルーチン名の
アンパーサンドを省略して使ってたり、なんてことは
ありそうなんですが、実際にはどうなんでしょうね。


それはさておき、省略できるところは省略するってのが
Perlっぽいというのを再認識。

*1:ついでに普段使っている割に語源を知らなかった「アンパーサンド(&)」について調べてみたら、極東ブログに詳細に書いてありました。以下引用。「アンパサンド(ampersand)の語源"and per se and"は、「andといってもつまりandそれ自体」ということ。含みとしては、AとNとDの略語とかじゃないということ。「"&"はだからぁANDなんだよぉ」ということでもある。」