I would expect:

//var %a = $true | if (!(%a)) { echo -a true } | else { echo -a false }
//var %a = $false | if (!(%a)) { echo -a true } | else { echo -a false }

to give the same results as:

//var %a = $true | if (!%a) { echo -a true } | else { echo -a false }
//var %a = $false | if (!%a) { echo -a true } | else { echo -a false }

However the former gives:

true
true

while the latter gives

false
true

What I was expecting to be able to do was to use !(%a && %b). I could just use (!%a || !%b), but I think the former is clearer, and should be possible.


Sais