The aims of the projects are quite different. Cocotron is designed purely as a porting toolchain, whereas GNUstep provides a complete IDE and many other cross-platform components.
This difference in philosophy becomes evident in some practical ways:
* Cocotron is designed for integration as a cross-compiler within Xcode. You can literally copy your Mac app or framework target and retarget it to Windows or Linux with a few clicks in Xcode.
(GNUstep also does cross-compilers in theory, but integrating with Apple's IDE is not their prime focus because GNUstep traditionally has had its own Next-derived dev environment.)
* Cocotron has a minimum of dependencies and tries to be very lightweight. Its Foundation and AppKit DLLs are just a few megabytes.
* Cocotron aims for a platform-native look, at least as far as possible within the constraints of Mac OS X resource and code compatibility.
* Cocotron's stated goal is Cocoa compatibility. It does not have its own public API extensions, unlike GNUstep.
This difference in philosophy becomes evident in some practical ways:
* Cocotron is designed for integration as a cross-compiler within Xcode. You can literally copy your Mac app or framework target and retarget it to Windows or Linux with a few clicks in Xcode. (GNUstep also does cross-compilers in theory, but integrating with Apple's IDE is not their prime focus because GNUstep traditionally has had its own Next-derived dev environment.)
* Cocotron has a minimum of dependencies and tries to be very lightweight. Its Foundation and AppKit DLLs are just a few megabytes.
* Cocotron aims for a platform-native look, at least as far as possible within the constraints of Mac OS X resource and code compatibility.
* Cocotron's stated goal is Cocoa compatibility. It does not have its own public API extensions, unlike GNUstep.