In Swift, += is a separate operator from +, and is defined within the confines of the language. It&#x27;s not privileged in any particular way:<p><pre><code>    func +=(inout lhs: Int, rhs: Int)
</code></pre>
and you can just implement this.<p>You might object that special forms are still privileged, e.g. foo[idx]+=1. But in fact these are not special: one of the surprising features of Swift is that inouts work on computed properties. For example, say we add a mutable property highHalf on UInt64:<p><pre><code>    extension UInt64 {
        var highHalf : UInt32 {
            get { return UInt32(self &gt;&gt; 32) }
            set { self = (self &amp; 0xFFFFFFFF) | (UInt64(newValue) &lt;&lt; 32) }
        }
    }
</code></pre>
Now you can do this:<p><pre><code>    var x = UInt64.max
    x.highHalf -= 1
</code></pre>
So complex references can be used for any inout. That&#x27;s how array indexing works.<p>Swift is the first language I&#x27;ve encountered that works this way; are there others?