布尔运算
Boolean implies operation
为什么 (defun boolimplies (a b) (or (not a) b))
if called as
(boolimplies 'a 'b)
return B
?
即使我不使用任何布尔值 (NIL,T) 而只使用变量名,它是如何得出这个结论的?
虽然在Common Lisp中只有t
和nil
是布尔值,但也有generalized booleans.,即所有对象都可以作为真值,只有符号nil
是错误的。您正在传递 nil
以外的符号,这些符号是正确的。
(只是为了避免任何潜在的混淆:如果您有变量 a
和 b
并且想使用它们的值而不是符号,只需将它们不加引号即可。)
为什么 (defun boolimplies (a b) (or (not a) b))
if called as
(boolimplies 'a 'b)
return B
?
即使我不使用任何布尔值 (NIL,T) 而只使用变量名,它是如何得出这个结论的?
虽然在Common Lisp中只有t
和nil
是布尔值,但也有generalized booleans.,即所有对象都可以作为真值,只有符号nil
是错误的。您正在传递 nil
以外的符号,这些符号是正确的。
(只是为了避免任何潜在的混淆:如果您有变量 a
和 b
并且想使用它们的值而不是符号,只需将它们不加引号即可。)