Perlの書き方で、最初違和感があったのが、変数省略。
foreachの制御変数やprint文の引数は省略して書くことができます。
foreach (0..9) {
print;
}
0~9までループをまわすのは何となくわかるが、printって何をprintするの?
実行結果は
0123456789
foreachの制御変数を省略した場合や、print文の引数を省略した場合、
Perlはデフォルト変数 $_ を自動的に使用するようです。
つまり下と等価。
foreach $_ (0..9) {
print $_;
}
使いすぎると混乱しそうです。