Out of curiosity, why does ~ map to both unary bitwise-not and binary bitwise-xor in imcc?
I was expecting xor to be ^ and ^^
See Apocalypse 3 for this. ^ was reclaimed for hyperoperators. Binary ~ was chosen as replacement since bitwise-not is already somehow like bitwise xor with only one operand. And so ~~ became logical xor.
Thomas