A 2008 Prediction: Carbon deprecated

So let me just toss this out there as a prediction for the new year: I think this will be the year that Apple lays out a road map to move all Mac OS X applications off of Carbon.

The hints are obvious and substantial, not the least of which is the fact that Carbon isn’t supported in 64-bit mode. But moreover, Apple has always preferred Cocoa, going all the way back to the “NeXT takeover of Apple”… Cocoa (née NextStep) has generally gotten the spotlight in WWDC keynotes and other developer communications. Carbon was offered as a migration path for Mac OS 9 apps to move to OS X and pick up modern benefits like protected memory, but remember: it was primarily meant as an upgrade path. It might not have existed if not for the big app makers balking at the thought of total rewrites for what was then called Rhapsody, especially given Apple’s poor outlook for the future in the late 90’s.

It’s also worth noticing that a lot of Carbon has already gone away. Some of the biggest and most significant libraries that made up Carbon are deprecated. QuickDraw was deprecated for 10.4 (Tiger), and Sound Manager has been deprecated in 10.5 (Leopard). So Carbon code-bases are probably already seriously in play.

The win for Apple is obvious: they’d have much to gain by only having one primary application framework rather than two (POSIX and Java aren’t “primary” for the purposes of this consideration). Less code to write, less code to test, less duplication of effort.

Thing is, rewriting Office or Photoshop or anything else for Cocoa isn’t likely to be a lot easier now than it was when Microsoft and Adobe first balked at the idea almost 10 years ago. Or is it? The difference now is that Carbon apps should have moved by now from QuickDraw to Quartz, from Sound Manager to Core Audio, from FSSpecs to modern equivalents… there might be a lot less work to do. The use of C++ is tolerated in Cocoa (in the form of Objective-C++), so app logic doesn’t necessarily need to be rewritten with “those crazy square braces”.

Apple has some still-viable pre-OS X apps (iTunes anyone?) that are presumably Carbon, and with the Intel transition done, I wonder if they’re not spending the first half of 2008 converting those to Cocoa, developing needed migration tools along the way, with the intention of rolling into WWDC 2008 able to say “it’s not that hard, we did it, here’s how, and here’s stuff to help.”

Previous Post

Comments (3)

  1. […] Fireball has an extensive analysis of the technical issues and how things have played out. My bet, posted in January and still on the table, is that Apple will deprecate Carbon at WWDC and roll out migration tools, […]

  2. […] of Carbon – I’ve already made my case for this one. With Carbon not going 64-bit, all of Apple’s hardware already […]

  3. […] this is the sound of me clinging to a soon-to-be-wrong prediction that Carbon would get deprecated this year: Apple has some still-viable pre-OS X apps (iTunes anyone?) that are presumably Carbon, and with […]

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.