モジュールが、CLI コマンドを兼ねるメリット

モジュールを CLI コマンドとしても振る舞えるように記述するメリットは、 モジュールの機能をコマンド行から簡易的に試す手段を提供出来ることです。

例えばモジュール Foo.pm のクラスメソッド bar を試しに呼ぶためには、 コマンド行でこのように書く必要があるでしょう。

% perl -I. -MFoo -e 'print Foo->bar'

# ダンプもしたいなら

% perl -I. -MFoo -MData::Dumper -e 'print Dumper(Foo->bar)'

もし、これが↓このように呼べたら、便利だと思いませんか?

% ./Foo.pm bar

次節では、モジュールを CLI から起動した時の 挙動の選択肢と、その中で私がお勧めしたい案について論じます。