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.
[ Also on InfoWorld: 10 features Apple "stole" for the Swift programming language | Apple's Swift is simple, at first | InfoWorld's "iOS 7 for developers" special report has the scoop on the bells and whistles in Apple's mobile OS -- and how you can harness them. | Keep up with the latest developer news with InfoWorld's Developer World newsletter. ]
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.
Here are seven reasons why Apple should open-source Swift, followed by seven reasons why it ain't gonna happen.
Why Apple should open-source Swift: Open source fuels innovation
Why Apple won't open-source Swift: Innovation isn't what Apple really wants
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.