我定义了一个XOR运算符:
let (.||.) x y = (x || y) && not(x && y)
Run Code Online (Sandbox Code Playgroud)
这样
true .||. true
true .||. false
Run Code Online (Sandbox Code Playgroud)
做回false和true分别.
根据Hansen和Rischel的说法,&&运营商的优先级高于||运营商(以及.||.运营商.因此,为什么
true .||. true && false
true .||. false && true
Run Code Online (Sandbox Code Playgroud)
做回false并true分别?结果似乎是由(true .||. true) && false而不是预期产生的
true .||. (true && false).