When Apple released Swift in 2014, it might have bet that developers would quickly adopt the new programming language for building iOS and macOS apps—and just as quickly abandon Objective-C, the language that powered the Apple software ecosystem for decades.
But a funny thing happened on the way to Objective-C’s supposed obsolesce: Developers refused to give the language up. That’s perhaps a reflection of the enormous amount of legacy code written in Objective-C that must be sustained, or Swift not yet having all the features that developers wanted. Whatever the case, Objective-C clung mightily to its relatively high rankings on the world’s most-popular-language lists.
However, all good things must come to an end, and there are some indications that Objective-C’s usage is starting to decline more precipitously. This month’s TIOBE Index, which ranks the relative popularity of programming languages, has the older Apple language dropping out of its top 20.
That’s not say that everyone will stop using Objective-C forever. As the note accompanying this month’s TIOBE rankings points out, old and little-used languages have a way of persisting for quite some time, if only for highly specialized use (i.e., academic research, or maintaining certain legacy apps that people refuse to rework). “There is still hope for Objective-C because old languages sometimes strike back,” the note added. “Take a look at Fortran! This dinosaur is back in the top 20 after more than 10 years.”
In order to create its rankings, TIOBE leverages data from a variety of aggregators and search engines, including Google, Wikipedia, YouTube, and Amazon. For a language to rank, it must be Turing complete, have its own Wikipedia entry, and earn more than 5,000 hits for +”<language> programming” on Google.
The big question is how popular Swift will become, especially as developers lessen their dependence on Objective-C to maintain legacy code. Although not as fully featured as other programming languages when it made its debut, Swift has benefitted from a sustained effort over the past few years to make it a more robust language. In 2020, for instance, the Swift.org open source team made several interesting announcements, including Windows support, better interoperability with C via Swift Systems, and the ability to utilize atomic operations in a codebase. Swift 5.3 was also retooled to compile faster.
Today, Apple has five operating systems: iOS, iPadOS, macOS, watchOS, and tvOS. These may soon be joined by an OS dedicated to augmented reality (AR) and virtual reality (VR) (perhaps they’ll call it ‘rOS’?). Meanwhile, Apple’s apps are becoming increasingly cross-platform. Given that complexity, developers’ demands for Swift will only increase as time goes on. Hopefully the language will continue to evolve to meet their needs.