我想在Perl6中编写一些逻辑语句。
我已经创建了逻辑运算符:
multi sub prefix:<¬> ($n) {
return not $n;
}
multi sub infix:<∧> ($n, $b) {
return ($n and $b);
}
multi sub infix:<∨> ($n, $b) {
return ($n or $b);
}
multi sub infix:<⇒> ($n, $b) {
if $n == True and $b == True {
return True;
} elsif $n == True and $b == False {
return False;
} elsif $n == False {
return True;
}
}
multi sub infix:<⇐> ($n, $b) {
return $b ⇒ $n;
}
但我想要能够引入新的真和假的符号。目前,我有:
say ((False ⇒ ¬(False ∨ True)) ∧ (False ∨ True));
但是,我想要:
say ((⟂ ⇒ ¬(⟂ ∨ ⊤)) ∧ (⟂ ∨ ⊤));
我想我可以将这些符号定义为常量:
constant ⊤ = True;
constant ⊥ = False;
但是,如果我这样做,就会出现以下错误:
/home/devXYZ/projects/test.pl6:1 处的常量声明缺少初始化器