作者: Taoka Fumiyoshi
日時: 2004/3/13(12:39)
>   例えば Perl ならモジュールになったら pm にするのが素直だろ、というのが
> あるじゃないですか。他の言語ではこういうのはあるんでしょうか?  ないんで
> しょうか?

perlmon(1)より
|        All Perl module files have the extension .pm.  The "use" operator
|        assumes this so you don't have to spell out "Module.pm" in quotes.

ということで、use の仕様だから.pmを使うということのようですね。


スクリプト言語一般の拡張子に関しては次の様に考えています。

(1) スクリプト本体に関しては、
    拡張子は単なる習慣的なものに過ぎない(なくても良い)。

(2) モジュール的なものは、仕様として拡張子が決まっている場合がある。
    単なるインクルードならば、自由。

(3) OSやHTTPサーバーなど、スクリプトを実行する環境側の設定で、
    特定の拡張子に制約される場合がある。

    [Windowsなどでの例]
     クリックして起動させるために拡張子で関連づけてある。

    [Apacheでの例] 
     AddHandler .cgi cgi-script などと、拡張子で振り分けてある。

(2)言語処理系の仕様と、(3)外部の設定による制約を
区別しないといけないと思います。
(2)は守らなければなりませんが、
(3)は制約の方を再設定する余地がありますから。

肝心の(2)に関して、すぐ思いつくのは、perl(.pm)とpython(.py)です。
他の言語は、それぞれ詳しい方にお任せします。