Does documentation for the Objective-C 2.0 ABI exist somewhere on the Internet? The release notes for objc4-493.9
say:
Forthcoming documentation will describe the ABI for the use of compilers and developer tools only.
Has it since been released? The closest such reference is Apple's Objective-C runtime reference, but this only describes the public-facing API rather than the implementation details. In fact, it even mentions the ABI in passing:
In addition, the new Objective-C ABI (not described here) [...]
Unfortunately the new ABI is not hyperlinked in the aforementioned text. :-) Is my only option to grok the source code for the objc4
runtime and Clang's CGObjCNonFragileABIMac
code-generation projects?
Community & supportAlthough Objective-C is still supported by Apple, it has never been an open-source language.
Programming in Objective-C will not become obsolete any time soon because, thanks to its 20 years of existence, it has a large code base, a number of apps maintained, and third-party framework with Objective-C at its core. These solutions and libraries are unlikely to be rebuilt from scratch with a new language.
The Objective-C runtime is a runtime library that provides support for the dynamic properties of the Objective-C language, and as such is linked to by all Objective-C apps. Objective-C runtime library support functions are implemented in the shared library found at /usr/lib/libobjc.
Even when written without a single line of Objective-C code, every Swift app executes inside the Objective-C runtime, opening up a world of dynamic dispatch and associated runtime manipulation.
Nope. Analysis of the clang and runtime source are your only options, aside from perhaps emailing the clang and Apple obj-c lists and seeing if anyone wants to respond. I know several of the people responsible for the GNU runtime subscribe to the clang list, so that may be a start.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With