discuss-gnustep
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Objective-C standard


From: Christopher Armstrong
Subject: Re: Objective-C standard
Date: Tue, 06 Jun 2006 16:35:52 +1000
User-agent: Thunderbird 1.5.0.4 (Windows/20060516)

**Jeremy Tregunna wrote:

You guys seem to be missing what a standard is used for. It's not used to keep a language static, it's used to help other people write other compilers and have them work with other compilers. In this regard, you really have to reverse engineer a lot of ruby or python to write a compiler for those languages, whereas with Common Lisp or Scheme, you don't, you have a specification you can follow which explains things in great detail.

I understand the reasons for standardising languages; it certainly helps with C++ to get competing compilers to operate the same with a single piece of code (although significant issues still exist, like with STL). Standards like Intel's C++ x86-64 ABI are also very helpful where several different ABI's exist, and where many continue to change from version to version. Objective-C is in the somewhat unusual situation where it is quite an old language, but IMHO due to a lack of widespread popularity and only a handful of compiler implementations, has never been standardised. In this respect, having only to target a couple of compilers makes it easier to port code, but more to the point, the compiler producer can take advantage of this fact and add features to the language without differentiating themselves too significantly from competing vendors when there isn't many.

Many of the mentioned scripting languages (ruby, perl, python, etc) exist in a similar state, and despite being popular, many only have one implementation. This means adding features is less harmful to the general programming community surrounding this language, as existing code bases only have to target the one implementation. OTOH, if MS were to add new features to it's C++ compiler (and they have before), and if these features were to become popular, they start to create havoc for code bases that are in C++ and need to be ported to other C++ compilers (like gcc). As programming languages begin to gain more implementations, this problem would start to appear.

Regards
Christopher Armstrong





reply via email to

[Prev in Thread] Current Thread [Next in Thread]