This is false. People believe it on faith without measuring:
https://mikeash.com/pyblog/friday-qa-2016-04-15-performance-...
> A normal Objective-C message send is a bit slower, as we'd expect. Still, the speed of objc_msgSend continues to astound me. Considering that it performs a full hash table lookup followed by an indirect jump to the result, the fact that it runs in 2.6 nanoseconds is amazing. That's about 9 CPU cycles. In the 10.5 days it was a dozen or more, so we've seen a nice improvement. To turn this number upside down, if you did nothing but Objective-C message sends, you could do about 400 million of them per second on this computer.
So it's 9 cycles vs what, one?
I'm not sure what you're asking? What are you trying to compare?
Compiler optimizations are exactly that, optimizations that any automatic memory mangement implementation usually takes advantage of.
(I’m now curious if the unowned keyword would have similar performance characteristics)
I should also perhaps mention that Swift is my favorite language to develop in. I’m not trying to be antagonistic, just realistic about its prospects against Rust.