To view parent comment, click here.
To read all comments associated with this story, please click here.
FYI, there are two open source Obj-C compilers (gcc and LLVM/Clang) and open source software can linked against either the OSX library stack or GNUstep.
So, by your standard, one could call C++ proprietary, since most software C++ software is written for a proprietary platform.
So, by your standard, one could call C++ proprietary, since most software C++ software is written for a proprietary platform.
C++ is not proprietary. How the language looks like and what libraries are available by default is defined by ANSI and ISO standards.
While Objective-C is defined by Apple's documentation. The compilers you mention only offer partial Objective-C 2.0 support for example.
Plus none of them offer base libraries for the language. Outside Apple systems you are left with GNUStep, which still tries to mimic the NeXTStep environment.
Man this thread is disintegrating badly.
Objective-C is _NOT_ proprietary. You are _not_ restricted in your use of it in ANY way whatsoever. It also pre-dates Apple going back the NeXT days (but of course Apple bought that lock, stock and barrel).
Proprietary would mean that the owners restricted, via license, your use of Objective-C is some way. This is not the case - you can implement your own compiler if you so choose to and even extend the language.
Also - I've seen Objective-C used WAY outside of Apple kit.
In addition to being inflammatory, this is misleading.
Objective-C is an adaptation of Smalltalk for people that like the Algol language family syntax (C like syntax).
Objective-C was not invented by Apple (and is not proprietary to them). It has been around longer than the Macintosh (the early 80's). Their has been a GNU version of Objective-C since 1993.
Objective-C can be compiled with GCC either Clang (the LLVM C/C++/Objective-C compiler). This means that you can code in Objective-C on Mac, Windows, or Linux. No proprietary tools are required (all Open Source).
Clang is about to become the primary compiler used by FreeBSD and other BSD flavours as well.
All that said, I agree that Objective-C is only really popular on Apple platforms (OS X and iOS). Objective-C was the language choice on NeXT machines. It became the main language on Mac when Apple bought NeXT in 1996.
In addition to being inflammatory, this is misleading.
Objective-C is an adaptation of Smalltalk for people that like the Algol language family syntax (C like syntax).
Objective-C was not invented by Apple (and is not proprietary to them). It has been around longer than the Macintosh (the early 80's). Their has been a GNU version of Objective-C since 1993. "
You're right, actually it was developed at NeXT, which only made the source code available to the FSF, because
they modified GCC source code. Originally there were no plans to make it open. FSF had to send their lawyer.
http://www.gnu.org/philosophy/pragmatic.html
Apple acquired the rights to the language when they bought NeXT.
Objective-C can be compiled with GCC either Clang (the LLVM C/C++/Objective-C compiler). This means that you can code in Objective-C on Mac, Windows, or Linux. No proprietary tools are required (all Open Source).
Except you forget that a language also requires a runtime and libraries.
GCC only provides support for Objective-C 2.0 since version 4.6.0, but still has two runtimes. No support
for changes made in Lion and Apple is no longer contributing to GCC since they have Clang.
And as you can see from this thread, still today it is not easy to convice them to give the changes back.
http://gcc.gnu.org/ml/gcc/2009-07/msg00403.html
Clang is about to become the primary compiler used by FreeBSD and other BSD flavours as well.
All that said, I agree that Objective-C is only really popular on Apple platforms (OS X and iOS). Objective-C was the language choice on NeXT machines. It became the main language on Mac when Apple bought NeXT in 1996.
Still a language without libraries won't fly. And there are no libraries outside Apple platforms. GNUStep does not count, because it is tracking a mix of NeXTStep and Cocoa, plus it still makes use of a NeXStep based build framework which does not go well in other OS.
And work for Objective-C 2.0 in GNUStep is still ongoing.
http://wiki.gnustep.org/index.php/ObjC2_FAQ





Member since:
2005-07-08
Because C does not offer all high level abstractions and better type safety that C++ does.
And Objective-C is an Apple proprietary language that is only used to write MacOS X and iOS applications.