&&
||
The idea is to match the precedence used in regular programming languages, where `x = y || x = z` is parsed as `(x = y) || (x = z)`. This commit also adds `!x` as notation for `bnot x`