Slashdot Mirror


2011's Fastest Growing Language: Objective-C

mikejuk writes "Every January, it is traditional to compare the state of programming language usage as indicated by the TIOBE index. So what's up and what's down this year? The top language is still Java, but it's slowly falling in the percentages. Objective-C experienced the most growth, followed by C# and C. JavaScript climbed back into the top 10, displacing Ruby. Python and PHP experienced the biggest drops. If you like outside runners, then cheer for Lua and R, which have just entered the top 20. However, I have to wonder why Logo is in the top 20 as well. I know programming education is becoming important, but Logo?"

9 of 356 comments (clear)

  1. The top 20 by danbob999 · · Score: 5, Informative

    Java
                    C
                    C#
                    C++
                    Objective-C
                    PHP
                    (Visual)
                    Python
                    Perl
                    JavaScript
                    Delphi/Object
                    Ruby
                    Lisp
                    Pascal
                    Transact-SQL
                    PL/SQL
                    Ada
                    Logo
                    R
                    Lua

  2. Re:Objective C by Goaway · · Score: 4, Informative

    Even GNUstep considers Apple's implementation the official one, and they try to follow it as closely as they can.

    When you run into problems porting, it is because GNUstep is lagging behind.

  3. Yiobe's bogus metrics by edxwelch · · Score: 5, Informative

    Tiobe generates the rating by the search results of google/bing, etc. So basically, it's just measuring how many web pages mention a particular language. It does *not* measure the actual usage of the language in applications.

  4. The reason for its popularity... by Timbo · · Score: 4, Informative

    ...is obviously because of iOS. More specifically it's because when Steve Jobs rejoined Apple in 1996 he brought with his a lot of NeXTStep tech, including Obj-C. That's why many of the system types have the 'NS' prefix. History lesson aside, it's rather a shame as it's (in my opinion) a rather poor and outdated language. If I'm ever asked by people who aren't familiar with it what it's like I say that it's the anti-sibling to C++. By this I mean that it has the same parentage as C++, but where C++ went down one path, Obj-C took the other. The fact that most well regarded modern languages have more in common with C++ than Obj-C should indicate that they made mistakes in its design. Obj-C's biggest failing is its tendency to fail at runtime rather than during compilation. This is mostly down to its weak type system.

    Don't get me wrong, I think C++ is getting pretty creaky too. I'm quite fond of D; in a fantasy world, some big commercial player will start using it and make it popular.

  5. Re:Objective C by Anonymous Coward · · Score: 4, Informative

    Yes, let's not, and point out that clang is BSD licensed.

    http://llvm.org/svn/llvm-project/cfe/trunk/LICENSE.TXT

    The exact same thing holds true for their "Objective-C" compiler. It may have had its roots in open source, but under Apple it most certainly is not now and never will be again.

    If clang started as open source that apple made proprietor, then why is the very first commit from Apple? http://lists.cs.uiuc.edu/pipermail/cfe-commits/2007-July/000000.html
    And why is the newest feature to come to Objective C being actively worked on Top of Tree by an apple employe. http://lists.cs.uiuc.edu/pipermail/cfe-commits/Week-of-Mon-20120109/051009.html

    So I stand 100% by calling Apple's compiler proprietary shit.

    Nope you stand 100% full of shit.

  6. Re:Objective C by LWATCDR · · Score: 4, Informative

    Actually IOS does allow you to develop in C++ if you want.
    http://gamedev.stackexchange.com/questions/11079/objective-c-or-c-for-ios-games
    and here
    http://iphonedevelopertips.com/cpp/c-on-iphone-part-1.html
    for examples.
    To be honest I have worked in C++ and Objective-C and I like Objective-C better. When I work on Windows or Linux I use C++ because that is the better supported language on those platforms. On IOS I use Objective C.

    --
    See my blog http://ilovecookes.blogspot.com/ for light hearted technical information.
  7. Re:Objective C by beelsebob · · Score: 4, Informative

    Which means that Apple's version will never see the light of day.

    clang.llvm.org

    Clang was an internal apple project, open sourced by them here's the email in which Chris Lattener (an apple employee) open sourced the code that he had written on apple's time. The code has continued to be released by apple under the BSD license.

    For reference, here's Apple's Objective-C runtime too.

  8. Re:C# by Rubinstien · · Score: 5, Informative

    Indeed this is so. You can also compile Objective-C using clang/llvm . See: http://clang.llvm.org/compatibility.html#objective-c . The clang implementation is at feature parity with the Mac OS X 10.7 version of the language, and based on my limited understanding of some comments I've read in various announcements, supports some additional features as well. Use of those features requires the GNUStep Objective-C runtime (libobjc2), rather than the GCC runtime. A high degree of Cocoa compatibility is available using the GNUStep Base (Foundation) and GNUStep GUI (AppKit) libraries, for numerous Unix platforms as well as Windows. A version of CoreFoundation is also available which wraps GNUStep Base, with a rewrite coming very soon that implements CoreFoundation in plain C. Various other Cocoa and iOS-compatible libs are available in disparate states of implementation. As always, GNUStep could use more developers and more users. Companies wishing to port their MacOS software to other platforms are encouraged to investigate GNUStep; previous porting efforts have positively contributed to the project by discovering and reporting bugs and sometimes by providing direct improvements.

    GNUStep was recently used to port the Mac-only racing game CoreBreach to Linux: ( http://corebreach.corecode.at/CoreBreach/About.html ). Other visible examples of Cocoa/Objective-C applications ported to Linux from MacOS include the 'eggPlant' automated testing tool from TestPlant ( http://www.testplant.com/ ), and plenty of previously Mac-only Free/Open-Source software such as Bean.app ( http://1.bp.blogspot.com/_2qH5zqXu7wQ/TRi6sNiNZjI/AAAAAAAAADM/i8RwqzQ6OYE/s1600/bean-gnome-theme.png ).

    The parent is correct that you do not need Apple kit to develop in Objective-C. To work with most examples you will find, you will need Cocoa-compatible development libraries and tools, though. Interesting starting points include the Windows Installers, which include all of the components you would need to get started ( http://www.gnustep.org/experience/Windows.html ), or the GNUStep Core packages ( http://www.gnustep.org/resources/downloads.php ) for other platforms. The Étoilé Project http://etoileos.com/ is also interesting. Those of you in Europe who are interested and intend on attending FOSDEM should stop by and visit the talks and devroom sponsored by these projects.

  9. Re:C# by Anonymous Coward · · Score: 4, Informative

    My observation has been the very opposite. I have seem very large windows deployments get replaced by Linux at several businesses especially with the movement to virtualization where one can get very lean headless Linux VM's that use minimal resources that allow better h/w scalability at much lower operating costs for running server software.