【发布时间】:2012-06-26 13:25:30
【问题描述】:
有这个:
use utf8;
package ÁngryBird; #note the Á in the package name
perl -c 结果是 syntax OK。
use utf8;
package ÁngryMoose;
use Moose;
perl -c 说,
ÁngryMoose is not a module name at
/opt/local/lib/perl5/site_perl/5.12.4/darwin-multi-2level/Class/MOP/Package.pm
line 209.
那么,代码有什么问题?
【问题讨论】:
-
相关:p3rl.org/…
-
@daxim ,你能说得更准确一点吗?您所说的 perl-delta 的哪一部分是相关的?
-
@cajwine,daxim 在那里有一个内部链接,它指出 Unicode 包名称根本无法根据 perl 5.8 delta 工作。我不确定从那以后它是否得到了清理。
-
好的,刚刚找到。所以,现在的问题是,为什么在第一个例子中(没有 Moose)的语法是好的。为什么会有这样的差异?
-
我认为文档中最相关的引述是:“虽然在 Perl 5.8.0 中确实存在一些有限的功能,但这比设计的更意外”。