Documentation for routine ?^ assembled from the following pages:

Language documentation: Operators §

From Operators

(Operators) prefix ?^ §

multi sub prefix:<?^>(Mu --> Bool:D)

Boolean bitwise negation operator: Coerces the argument to Bool and then does a bit flip, which makes it the same as prefix:<!> .

Language documentation: Operators §

From Operators

(Operators) infix ?^ §

multi sub infix:<?^>(Mu $x = Bool::False)
multi sub infix:<?^>(Mu \aMu \b)

Boolean logical XOR operator. Coerces the argument(s) to Bool and performs logical XOR on it(them): it will return True if and only if just one of the argument is True. On a single argument it behaves as identity, returning the coerced value.