They’ve been slowly training us developers to stick with the
documented stuff and use their higher level APIs. They want us to
accept their abstractions and work within them. This is usually
rationalized under the guise of safety, compatibility, and quality
control. Those are fine and acceptable reasons by themselves, but
what if there’s another purpose lurking behind the curtain?
I think there’s a chance that Apple is slowly building
Objective-C into a managed environment similar to Java/.NET.