为什么撇号在Perl中签名是有效的路径分隔符

时间:2013-04-05 14:27:59

标签: perl syntax

在Perl中,使用::作为路径分隔符调用模块。因此,如果您在site/lib/GD/Image.pm上有一个模块,则可以致电use GD::Image

但是,很久以前我发现你也可以调用use GD'Image和类似my $img = new GD'Image;之类的东西,CPAN上也有模块使用其名称/文档上的语法。

背后的目的或逻辑是什么?它是否可能,就像Perl中的许多内容一样,只是一个旨在人性化句子并允许您创建和使用Acme::Don't等模块的功能?

它有任何其他意图与::不同吗?

2 个答案:

答案 0 :(得分:10)

有关说明,请参阅perlmod

  

旧的包定界符是单引号,但双冒号现在是首选定界符

所以,原因是历史。

答案 1 :(得分:6)

单引号是旧的ADA分隔​​符。然而,它与Emacs的搭配并不好,所以使用了双结肠。

天哪! ADA? Emacs的?我老了。