7 reasons Apple should open-source Swift -- and 7 reasons it won't

Faster innovation, better security, new markets -- the case for opening Swift might be more compelling than Apple will admit

Apple's new programming language Swift has been public for a few short months, but the Apple faithful are already bowled over. They toss around words like "cleaner," "simpler," "modern," and "powerful."

The rest of the world, however, can only speak about Swift hypothetically -- while the coding tools are free, they run inside only Xcode or a Playground, which, in turn, run on only Apple hardware. Of course, if you're really desperate, a clever website lets you try some basic Swift code as long as you don't touch the libraries.

This is a bit strange. In recent years, creators of programming languages have gone out of their way to get their code running on as many different computers as possible. This has meant open-sourcing their tools and doing everything they could to evangelize their work.

Apple has never followed the same path as everyone else. The best course may be to open up Swift to everyone, but that doesn't mean Apple will. Nor should we assume that giving us something for free is in Apple's or (gasp) our best interests. The question of open-sourcing a language like Swift is trickier than it looks.

In the world of programming, new ideas, tools, and architectures frequently begin as open source. Breakout languages such as JavaScript, PHP, Clojure, and Haskell all have open source engines attracting coders. Node.js, for instance, brought JavaScript to the server, thanks to open source JavaScript engines such as V8 and Rhino. If you want to grab mind share, the simplest mechanism is to publish the code freely on a code-sharing site like GitHub or Sourceforge and spread it as widely as possible. Developers will flock to it, expanding its features and reach.

The syntax looks different and the press releases repeat the word "new" again and again, but at its core Swift is simply a smart business ploy to maintain the status quo and squeeze more life out of existing libraries.

For all of its elegance, Swift is designed to support a world built bottom up in Objective-C. It's meant to play well with the bazillion lines of existing Objective-C, not supplant it. This means Apple gains little from the creative fervor of a new open source project moving in whatever direction the mob wants to take it. Apple wants to keep its hardware running smoothly, not encourage chaotic innovation.