brantlew wrote:
It's not that the syntax is any worse than other languages. It's just unnecessarily different from the typical C++/Java OO syntax that 95% of all software developers are comfortable with.
It's weird to say that the Objective-C syntax is unnecessarily different from C++/Java when it has been popular more than a decade before both of them. When the Objective-C language was used as the basis for NeXT in 1988 it was fairly mature, while C++ was merely confidential in its use and Java wasn't even an idea.
brantlew wrote:
But C++ quickly dominated, won, and was copied my most other languages since then. Apple should have admitted that Objective C was a loser a long time ago and dropped it.
C++ didn't quickly dominate, it took a lot of time for it to become popular, starting from 1991 which is the date of its real introduction to the world. The first decent C++ compiler from Microsoft only dates back to 1998 and in 1999 Quake III was still written in C for example.
Apple purchased NeXT three years before that (in 1996) to use their assets as the basis for Mac OS X. At this time this choice made a lot of sense since they had a complete environment to build a new platform : a language, a desktop environment (NeXTstep) and a whole development environment (project builder, interface builder, etc.).
brantlew wrote:
It doesn't offer anything new in terms of functionality, so its foreign syntax and structure just serves to confuse and drive away development mind-share.
Its syntax is not more foreign than the C++ one, they just used different paradigms. C++ syntax was based on Simula while the Objective-C syntax was based on Smalltalk. There is no syntax intrinsically better than the other, it's just that you are used to the Simula-one and don't want to invest time on the Smalltalk one.
Also the goals of the two languages at their creation were somewhat different, for Objective-C it was reusability, which is very important when you use it in a complete ecosystem like Mac OS X or iOS. For C++ it was large scale development. As always, it's only a question of the right tool for the right job...