我试图在repl中创建一些类,当我创建一个具有与第一个类相同的属性的第二个类时,我被告知它已经定义好了。
这仅仅是repl没有正确处理名称空间的一个问题吗?它可以像文件中所期望的那样工作。
Perl6版本:这是Rakudo 2018.10,构建在实现Perl6.C的MoarVM版本2018.10上。
> class Thing {
* has $.stuff;
* }
(Thing)
> class OtherThing {
* has $.stuff;
* }
Package 'OtherThing' already has an attribute named '$!stuff'
in any scope_declarator at /home/path/.rakudobrew/moar-2018.10 /install/share/nqp/lib/Perl6/Grammar.moarvm line 1
in any term:sym<scope_declarator> at /home/path/.rakudobrew/moar-2018.10/install/share/nqp/lib/Perl6/Grammar.moarvm line 1
in any term at /home/path/.rakudobrew/moar-2018.10/install/share/nqp/lib/Perl6/Grammar.moarvm line 1发布于 2018-12-23 16:21:25
我只是尝试在我的REPL上复制这个稍微不同的地方,我没有错误.
> class Thing { has $.stuff }
(Thing)
> class OtherThing { has $.stuff }
(OtherThing)
>PS。当将块分散到多行时,我确实得到了与您相同的错误。
这是构建在实现Perl6.C的MoarVM版本2018.10上的Rakudo版本2018.10。
看起来您的错误是由REPL中的*多行块逻辑引入的--我认为这是一个错误。请你报告一下好吗?
https://stackoverflow.com/questions/53904577
复制相似问题