我正在努力使¬成为一个逻辑否定运算符.
¬ True; multi sub prefix:<¬> ($n) { return not $n; }
当我运行上面的程序时,它返回此错误:
06001
有谁知道原因可能是什么?
解决方法
新运算符的声明必须在使用之前出现.将程序更改为:
multi sub prefix:<¬> ($n) { return not $n; } say ¬ True;
使它工作正常.
Perl 6具有严格的一次通过解析规则.因此,顺序与影响被解析语言的任何事物有关 – 例如通过引入类型或新运算符.