マジカルなPerl

JavaScriptで、渡ってくる引数を全部取り出したくて、ちょっと調べた。つまり、Perlで言えば、次のようなことがしたい。

sub func {
    my @args = @_;
    ...

どうやら、argumentsで取れるらしい。なるほど。

Perl使いとしては、微妙に違和感があった。何故だろうと考えてみるに、受け取るものが@_という意味不明なものなのか、argumentsという意味のあるそうなものなのかと言うのが大きいように感じた。

Perlでは、重要?な変数が、意味不明だったりする。@_とか、$/とか、そういうの。意味不明なので、Perlの呪文的な側面を助長していて良い(かどうかは微妙だ)が、最低限、変数名を汚染しにくいと言う利点はある。argumentsという変数を使いたくなったり…しないなぁ、長いから。

これって多分、言語を作った人の思想なんだろうなぁと、想像したりした。

# と、とりとめの無い文章を、テストがてら書いてみる。(なんのテストだ。)