GNUstep is an official GNU project using GNU LGPL as the license of its core libraries.
State of the art object-oriented design
GNUstep is a fifth generation implementation of the visionary multiplatform OpenStep object software refined and extended offering additional compatibility with Apple's Cocoa class library.
Simple & flexible
GNUstep has a simple and consistent API making it easy to learn. It uses Objective-C, an extension of ANSI C. Objective-C is the fastest object-oriented language providing full dynamic dispatching, typing, loading, full and direct access to runtime structures (including full introspection capabilities, ability to create classes at runtime, ability to add or modify methods of existing classes), forwarding, distributed objects support built into the language, and much more. C programmers can learn it in a day.
Fast
The GNUstep core libraries include an optimized foundation library which, for example, not only supports natively unicode strings but uses a transparent class cluster design which makes sure that every string is internally stored and managed in the most efficient way. I.e., if you're only using ASCII strings, the library will store and manage them as ASCII, and only start using slower (and more memory hungry) character sets when it's really needed!
Easy to integrate
Objective-C is 100% compatible with ANSI C and use the same linking conventions, so you can use your favorite C libraries in Objective-C as well as expose Objective-C methods as C functions to your C projects. Because of Objective-C's dynamic nature, you can easily interface with other languages as demonstrated by the guile, java and ruby interfaces. C++ integration is simplified with Objective-C++ which allows mixing Objective-C and C++ in the same file. Objective-C++ is being contributed by Apple to the main GNU compiler collection (GCC).
GNUstep software can be compiled and run on PCs and Apple Macs, running Linux, BSD and Darwin operating systems. Work in progress includes Microsoft Windows. It is also source-code compatible with Mac OS X's Cocoa environment.
Fast build system
GNUstep includes gnustep-make, a build system which allows you to build your projects by using extremely simple and intuitive makefiles; it provides you with full portability (to any GNUstep platform, and to Apple Cocoa) without the need to interact with tools like autoconf. gnustep-make has been heavily optimized and can crunch through your most complex and deep projects at an incredible speed, shortening dramatically your build and test iterations. If you prefer an IDE, ProjectCenter allows you to create and run projects without the need to write makefiles.
Graphical user interface builder
Gorm allows developers to quickly create graphical applications and to design every little aspect of the application's user interface. It is, inspired by the legendary NeXTstep Interface Builder application, and takes advantage of the dynamic features of the Objective-C language to make it easy and intuitive to connect graphical objects in your window with the actual code in your application. Using drag and drop all types of objects like menus, buttons, tables, list and browsers are easily added to the interface. With just the mouse you can resize, move or convert the objects or connect them to functions as well as edit nearly every aspect of them using Gorm's powerful inspectors.
