4 ms·
ABI stability benefits users too. It reduces payload sizes because runtime can reside in the OS as a shared library.
by sedatk 7y ago
ABI stability benefits users too. It reduces payload sizes because runtime can reside in the OS as a shared library.
- gdxhyrd 7y agoI answered to that in the last paragraph. I don't see the appeal in 2019, in particular in the Apple ecosystem where backwards compatibility is not respected that much.
- rimliu 7y agoHow is that irrelevant? If the app you install is 20MB smaller it is still 20MB not taken from your data cap and it is still less data to transfer, thus faster. Before ABI stability every iOS app had to come with bundled Swift runtime/libs. Event if two apps used exactly the same version, you'd still get two copies. With ABI stability apps can use what iOS provides and no longer need own copies.
- gdxhyrd 7y ago20 MB is a ridiculous amount compared to anything else going on in your phone, including sending a few high res shots. Many apps and iOS updates are an order of magnitude bigger, and they are not even games. If size was such a huge concern, Apple would have provided it a long time ago in Swift.
- sanxiyn 7y agoSize is a huge concern. The article is exactly about why it wasn't done a long time ago, because it is a very hard problem.
- jayd16 7y agoIn this a real world advantage? Are iOS and OSX binaries significantly smaller than Android, Windows, and Linux binaries? Not noticeably in my experience but I could be wrong.
- progval 7y ago> significantly smaller than Android, Windows, and Linux binaries Linux distributions do use dynamic linking (.so files are dynamic library) like OSX does (but with .dylib). Windows also has dynamic linking (.dll), but they are less frequently used because the lack of a package manager with dependency management requires application vendors to distributes non-system libraries with their application anyway.