What is GNUStep used for?

View: New views
4 Messages — Rating Filter:   Alert me  

What is GNUStep used for?

by Gary Dumer :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

Exactly what is GNUStep used for?

Here's what I can figure out:

1. It's not an operating system.

2. It's not a GUI builder.

3. It includes Objective-C as its main application building tool.

4. It has some really ugly, retro looking apps  (Gorm... etc.) for developing programs.

What I'd like to know:

1. Is it designed to promote Objective-C?

2. If it does not produce GUI apps, how were Gorm... etc. produced?

3. Is it mainly for Linux and Windows?

4. Is it necessary to use GNUStep and its libraries or may I just write ObjC apps using GCC?

The website doesn't do a very good job of introducing potential new users to the true purpose and use of GNUStep.

So I repeat... What is GNUStep used for?




_______________________________________________
Discuss-gnustep mailing list
Discuss-gnustep@...
http://lists.gnu.org/mailman/listinfo/discuss-gnustep

Re: What is GNUStep used for?

by Nicolas Roard :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message



On Wed, Oct 14, 2009 at 11:25 PM, Gary Dumer <gedumer@...> wrote:
Exactly what is GNUStep used for?

Here's what I can figure out:

1. It's not an operating system.

2. It's not a GUI builder.

3. It includes Objective-C as its main application building tool.

4. It has some really ugly, retro looking apps  (Gorm... etc.) for developing programs.

What I'd like to know:

1. Is it designed to promote Objective-C?

2. If it does not produce GUI apps, how were Gorm... etc. produced?

3. Is it mainly for Linux and Windows?

4. Is it necessary to use GNUStep and its libraries or may I just write ObjC apps using GCC?

The website doesn't do a very good job of introducing potential new users to the true purpose and use of GNUStep.

So I repeat... What is GNUStep used for?

Keeping things simple:

It's a programming framework for Objective-C. That is, it provides various Objective-C libraries implementing a bunch of stuff so that you don't have to, both for non-graphical things (that's Foundation) and for graphical things (that's the GUI toolkit, called AppKit).

Foundation and AppKit originates from a specification called OpenStep. MacOSX provides an implementation of those two libraries, and they are used to write most OSX applications. GNUstep's implementation of those two libraries are also referenced respectively as "gnustep-base" and "gnustep-gui". MacOSX's implementation is slightly different (mostly, with additional classes/methods) to gnustep's, but one goal is to track osx's implementation. The end result is that it's pretty easy to have an application running both on OSX and on GNUstep, with minimal (or no) modifications.

In addition to that, the GNUstep project is the umbrella of subprojects such as GORM or ProjectCenter. Those two are applications that respectively let you create a UI for your program and manage your code. I could go on and on about GORM because it's a lot more than just a mere GUI builder, it's really an Object modeller, but well, at first glance it is a GUI builder :) (The equivalent application on OSX is called InterfaceBuilder).

Finally, GNUstep is cross-platform, so if you write a program using the GNUstep libraries, it will be able to work on the platforms that GNUstep supports, mainly, linux, bsd and windows.

So to answer your questions:

1. It's not an operating system.

indeed, it's a programming environment.

2. It's not a GUI builder.

it's not, but it contains one (GORM).

3. It includes Objective-C as its main application building tool.

as its main programming language, not tool. That would be ProjectCenter and/or GNUstep make (a collection of make macros that let you create a makefile trivially)

4. It has some really ugly, retro looking apps  (Gorm... etc.) for developing programs.

well, I guess...

1. Is it designed to promote Objective-C?

That's an odd question -- it's no more designed to promote Objective-C than Qt is designed to promote C++. It's just an implementation of an awesome framework (OpenStep) that was really well designed (and therefore let you write application much more quickly than some other programming frameworks). OpenStep happens to be done in Objective-C, so here you go.

2. If it does not produce GUI apps, how were Gorm... etc. produced?

It does. There are two main programming libraries (though we call them "frameworks" rather than libraries, as that's what they are), one dealing with non-graphical stuff, the other with graphical stuff (i.e., creating a UI).

Gorm, ProjectCenter, and other applications using GNUstep use this framework.

3. Is it mainly for Linux and Windows?

Linux, BSD and Windows, yes. Mainly.

4. Is it necessary to use GNUStep and its libraries or may I just write ObjC apps using GCC?

You can write ObjC apps using GCC and no GNUstep, but that's imho kind of missing the point. 

--
Nicolas Roard
"I love deadlines. I like the whooshing sound
they make as they fly by." -- Douglas Adams

_______________________________________________
Discuss-gnustep mailing list
Discuss-gnustep@...
http://lists.gnu.org/mailman/listinfo/discuss-gnustep

Re: What is GNUStep used for?

by Gregory Casamento :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

Gary,

On Wed, Oct 14, 2009 at 6:25 PM, Gary Dumer <gedumer@...> wrote:
Exactly what is GNUStep used for?

See below. :)
 
Here's what I can figure out:

1. It's not an operating system.

Correct.
 
2. It's not a GUI builder.

Part of it is.  GNUstep is an API and Development environment as it says on the website "GNUstep provides a robust implementation of the AppKit and Foundation libraries as well as the development tools available on Cocoa/OpenStep, including Gorm (the InterfaceBuilder) and ProjectCenter (ProjectBuilder/Xcode). "
 
3. It includes Objective-C as its main application building tool.

Incorrect.  It uses gcc's implementation of Objective-C and LLVM/Clang's implementation of ObjectiveC as it's main language.
 
4. It has some really ugly, retro looking apps  (Gorm... etc.) for developing programs.

I'm not sure why you think them "UGLY."   They are no prettier or uglier than tools of a similar type.  It should also be noted that Gorm is much more capable than GLADE or similar tools, so I'm not sure how "pretty" it is relates to how useful it is.
 
What I'd like to know:

1. Is it designed to promote Objective-C?

Not specifically.  It uses Objective-C as it's main language.
 
2. If it does not produce GUI apps, how were Gorm... etc. produced?

It does produce GUI apps.  Gorm was used to produce itself. :)  Gorm is also used to produce other apps.
 
3. Is it mainly for Linux and Windows?

No.  GNUstep works on both of these, but it is inaccurate to say that it's "mainly" for them.   GNUstep works on a wide range of operating systems.
 
4. Is it necessary to use GNUStep and its libraries or may I just write ObjC apps using GCC?

Not necessary, no, but it is to your advantage to do so since GNUstep provides a very large Objective-C library.

 
The website doesn't do a very good job of introducing potential new users to the true purpose and use of GNUStep

Indeed, we need to do a much better job at explaining what GNUstep is on the website.  I'm guessing that saying the above isn't clear enough.   We are working on making the website better.
 
So I repeat... What is GNUStep used for?

No need to repeat yourself.

GNUstep is an API and development environment which enables you to develop applications quickly.  It's also useful for porting applications from the Mac to other platforms, although that is not our main purpose.
 


I appreciate your questions.   We'll try to improve the website so it's clearer.

Thanks, GC
--
Gregory Casamento
Open Logic Corporation, Principal Consultant
## GNUstep Chief Maintainer
yahoo/skype: greg_casamento, aol: gjcasa
(240)274-9630 (Cell), (301)362-9640 (Home)


_______________________________________________
Discuss-gnustep mailing list
Discuss-gnustep@...
http://lists.gnu.org/mailman/listinfo/discuss-gnustep

Parent Message unknown Re: What is GNUStep used for?

by hns@computer.org :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

On 15 Okt., 00:25, Gary Dumer <gedu...@...> wrote:

> Exactly what is GNUStep used for?
>
> Here's what I can figure out:
>
> 1. It's not an operating system.
>
> 2. It's not a GUI builder.
>
> 3. It includes Objective-C as its main application building tool.
>
> 4. It has some really ugly, retro looking apps  (Gorm... etc.) for developing programs.
>
> What I'd like to know:
>
> 1. Is it designed to promote Objective-C?
>
> 2. If it does not produce GUI apps, how were Gorm... etc. produced?
>
> 3. Is it mainly for Linux and Windows?
>
> 4. Is it necessary to use GNUStep and its libraries or may I just write ObjC apps using GCC?
>
> The website doesn't do a very good job of introducing potential new users to the true purpose and use of GNUStep.
>
> So I repeat... What is GNUStep used for?

You can see GNUstep as the "Standard Obj-C Libraries (+ some tools)"
in a similar way as libc for C, C++ Standard Library for C++, J2SE/GNU
classpath for JAVA, etc.
_______________________________________________
Discuss-gnustep mailing list
Discuss-gnustep@...
http://lists.gnu.org/mailman/listinfo/discuss-gnustep