I&#x27;m very much not sure of the following but I&#x27;m going to say it anyway and let folk explain how I&#x27;m wrong. :)<p>Each operator and its overloads -- certainly built ins, users are recommended to follow suit  -- conceptually maintains its own single high level semantics. Thus, while some langs have a `+` op that does numeric addition or string concat based on operand types, in Perl 6 a `+` will always mean numeric addition (unless a user breaks this convention).<p>`==` is always numeric value equality.<p>`==` does what most folk would expect between any pair of values that are a subclass of Any (the root of the type hierarchy for most purposes).<p>Junction is a direct subclass of Mu (the ultimate root of the type hierarchy), outside the Any hierarchy.<p>When a scalar operation is applied to one or more Junction values, the relevant operation is &quot;autothreaded&quot; over the superposed values inside the Junctions and returns a new Junction value.<p>If a Junction is treated as a boolean the Junction collapses to a regular single boolean value.