2013-04-05 19 views
8

Perlでは、パスセパレータとして::を使用してモジュールを呼び出します。したがって、site/lib/GD/Image.pmにモジュールがある場合は、use GD::Imageと呼び出します。アポストロフィがPerlで有効なパス区切り記号に署名する理由

しかし、ずっと前にuse GD'Imagemy $img = new GD'Image;のようなものを呼び出すことができ、また、その名前/ドキュメントにその構文を使用しているCPAN上のモジュールもあります。

その背後にある目的または論理は何ですか?それはおそらく、Perlの多くのものが、の人物を文にすることを意図した機能で、Acme::Don'tのようなモジュールを作成して使用できるのでしょうか?

::とは異なる別の意図がありますか?

+0

それ以外の場合、私たちは[クリンゴンでプログラムする](https://metacpan.org/module/Lingua::tlhInganHol::yIghun#SYNOPSIS)とはどのようになるでしょうか? – Schwern

答えて

10

は、説明のためにperlmodを参照してください:

古いパッケージ区切り文字は、単一引用符だったが、二重のコロンはので、理由は歴史ある今の好適区切り

です。

+0

良い答え。 :-) –

6

単一引用符は古いADAセパレータです。しかし、Emacsでうまく動かなかったので、ダブルコロンが使用されました。

おはよう! ADA? Emacs?私は古いです。

関連する問題