perldoc perlsubによると:
& は、サブルーチンが事前に宣言されている場合の括弧と同様に、最新の Perl ではオプションです。
多くの場合、Perl サブルーチンを呼び出すときに括弧を省略できるという事実を人々が使用していることに気付きました (たとえば、最近の SO 回答からランダムに引用します)。
open my $fin, '<', $file;
と同じくらい有効です
open(my $fin, '<', $file);
2 番目の (括弧なし) バージョンを使用する主な (理想的には技術的な) 理由は何ですか?
perldoc perlsynは、このトピックについて、再びオプション性について言及する以外には何も述べていません。
私にとって、常に括弧を使用することは、私の起源が C 開発者であるため、ほとんどスタイル上の選択です。しかし、Perl 開発者としてオプションの括弧なし構文を使用しないことで何かが欠けているかどうかを知りたいです。
PS私は、括弧付きのバージョンを好む理由をよく知っています-例えば、間接的なオブジェクト表記の問題、または括弧なしで使用される前に非組み込み関数を宣言する必要がある、またはvisavior
対の優先順位の問題など||
です。逆に興味があります。
PPS私は、意見を裏付ける研究なしに、単に「スタイルが良い」/「読みやすい」と述べている回答にはあまり興味がありません。私は、括弧の省略を好む技術的な理由、またはバックアップされた文体の違いの好みのいずれかに興味があります(「バックアップされた」を「権威に訴える」または「大衆的な議論」の誤謬と混同しないでください。速度または「Perl コミュニティの誰もが同意する」または「Damien Conway がこれを提案する」ではなく、Damien がこれをどのように裏付けているかを説明していません)。