This is cool -- I've long had a dream of using Obj-C as a system programming language on non-Mac platforms. To be productive you need a lot of things, like NSString and NSDictionary, however. There is GNUStep; is it sufficiently up to date? Has anyone done this?
For system programming, that's probably feasible. GNUStep's implementations of NSString, NSDictionary, and other Foundation types are pretty solid (to my limited knowledge). That is to say, if you don't want to use anything beyond core Foundation classes (not CoreFoundation), GNUStep is probably sufficiently up to date to build cross platform system software. Conditional compilation makes this particularly feasible for lower level programming. Most people, of course, just want GNUStep to let them port their OS X apps etc. to other platforms.
Any idea why Apple hasn't open sourced anything beyond CFLite? Without multiplatform, objc's ecosystem doesn't get a real chance to flourish, so efforts like this one are great; but I don't get why Apple is making this so hard. Their open-source approach to webkit has proven so successful, yet they show no interest in applying the same pragmatism to objc.
Woah. What? The iOS market is a 2.5 billion per year and growing. It is not unusual to only have one type of build system[1] supported per industry (major product line)[2].
[1] Mac with OS X 10.7 with XCode 3 or 4 using iOS API's
[2] The industry is considered the iPhone/iPod/iPad app store only because the other markets, Android and Blackberry, have non interchangeable binaries.
Woah. What? The iOS market is a 2.5 billion per year and growing.
No shit. I'm talking about Objective-C. If more developers could use it and more often, we'd have better libraries, better developers, a better community. Look at the momentum that C++ has despite its flaws.
If you doubt that ObjC developers would be interested in using ObjC but don't because using it on other platforms is too exotic, check this thread: http://news.ycombinator.com/item?id=3205372
It is not unusual to only have one type of build system[1] supported per industry
So what? Doing things because it's the usual thing to do is not Apple's way of doing things and it's worked for them. That's also why I'm surprised with this.