Copland 2010: A Partial Solution?

This year the promotional hint that Apple dropped was:

Join us for a preview of the future of iOS and Mac OS X

On the surface it's saying "hey, we got OS X Lion and we'll be shipping the next iPhone soon". While everyone in the digital punditry scene seems to agree on this, I think John Siracusa on the latest Hypercritical: A Dark Age of Objective-C may be onto something with his Avoiding Copland 2010 thesis.

Basically, his central argument boils down to a software technology crisis: Apple hasn't got a plan to modernise its software architecture and they're in for some Heavy Shit©. He posits that Objective-C, while given a boost in necessity thanks to resource-constrained iOS devices, hasn't kept track with the wider development world which has transitioned to memory-managed languages like Java, C#, and dynamic languages like Ruby and Javascript. While the language itself has evolved, Objective-C for the most part is still a wrapper over C. OS X and iOS still share a common ancestor in NeXTSTEP which was created decades ago, something akin to the lineage of Microsift's NT kernel.

I have to agree with him and I for one could see Lion as the tail end of OS X. If the message Apple is giving us with WWDCs subtitle is read between the lines, then perhaps we could see an announcement that addresses Siracusa's concern. Can Apple do away with Objective-C and Cocoa? Assuming Apple wants to sink some serious cash into developing the next leap in operating system architecture and kill a bunch of developers by transitioning to a totally new non-legacy programming interface, what are their options when it comes to the de-facto programming language?

Apple with learned from many third parties that they can't rely on others for support. Java is out, thanks to Oracle's asshattery. C#, while an open ECMA standard, is predominately a Microsoft technology bound to the .NET platform. Sure, they could finagle the language onto a new framework that implements just the standard-defined types, but let's just agree that C# and .NET were made for each other.

For the past few years, Apple has been pouring a bunch of resources into the  LLVM Project. What's interesting about this toolchain is that you can have multiple front ends and all the features of modern compilers like JIT and position independent code (PIC). Apple could in theory support any language with a LLVM front end.

A language like Objective-C.