Lion/iOS 5 APIs included in latest GNUStep Objective-C Runtime release
lists.gnu.org
lists.gnu.org
Implementing all Mac OS X ObjC runtime APIs is great, but it's far from implementing the ObjC framework APIs (Foundation / AppKit). In fact, most Cocoa code does not even use the runtime APIs explicitly (though the compiled code certainly does).
Although I should note that the frameworks are not "ObjC frameworks" per se, but rather the Cocoa/OPENSTEP frameworks—which are mirrored, for example, in Objective-C++, making them not exactly ObjC specific, philosophically. But you're absolutely right that this is the difference between being able to use Objective-C on Linux and being able to use Cocoa on Linux :P
[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.
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.
It doesn't involve or include any of the actual API Frameworks that are used when developing OS X or iOS applications, however. So while this will simplify porting in the sense that you won't find that there are language features that are missing in GNUStep, porting still potentially involves significant changes to your code base, depending on what APIs you were relying on and what the equivalents available in GNUStep are like.
> if the APIs are there ...
The APIs are exactly what aren't there. That is, the runtime APIs are now there, but the framework APIs aren't.
GNUstep's runtime just gained some language/runtime APIs, that is very low level features that appeared in Apple's recent updates to their implementation of the Objective-C language & runtime. This is a very different matter from the gargantuan frameworks (Cocoa, AppKit, UIKit) which Apple has built atop Objective-C. These frameworks are the APIs that should be "there" to allow doing "a lot of the dev with GNUstep"— an they are a long way from being implemented by GNUstep, but some are indeed being worked on.
http://opensource.apple.com/source/objc4/
I can't speculate about why Apple's runtime would or wouldn't be suitable for use in GNUstep though.
http://www.gnu.org/philosophy/apsl.html
Huh. I was pleasantly surprised by the sentence: "Apple's lawyers worked with the FSF to produce a license that could qualify."
http://www.linuxtoday.com/mailprint.php3?action=pv<sn=...
So Apple revised the APSL to address some of his concerns.
This doesn't support ARC, does it?