Slashdot Mirror


Eiffel as a Gnome Development Language ?

Thomas Delaet writes " This article is a short evaluation of Eiffel as a language for developing the core gnome desktop platform. Last month, there has been a heavy debate about a successor for C/C++ as the language of choice for developing the core gnome desktop components in. The debate has mostly focussed around C#/Mono and Java. This article tries to summarize the different requirements for a gnome development language and shows how Eiffel fits in these criteria."

5 of 397 comments (clear)

  1. "Blue is the color of my Windows screen" by tepples · · Score: 5, Funny

    The Eiffel language may be a good choice for GNOME apps, but wouldn't running a Windows app written in Eiffel 6.5 result in the Blue Da Ba Dee Screen of Death?

  2. Pointless by m00nun1t · · Score: 5, Insightful

    I haven't been watching the debate, but surely a top concern is developer pool? C# and Java are both widely used languages, Eiffel is rarely (although not never) seen outside academia. Surely a large OSS project can't afford to be alienating such a large % of the developer community? There is little incentive to learn Eiffel either - even if you don't know C#/Java, learning them will probably increasing your chances of getting more $ at your day gig, but Eiffel?

  3. Eiffel? Bah! by JanusFury · · Score: 5, Funny

    Eiffel? Why bother? There is a much better language out there that's already being used heavily on the GNOME platform, along with other platforms like KDE.

    What language, you ask?

    English!

    English is an easy-to-learn and powerful language. A large number of developers already know this language, and there are many tools available to translate it to/from other languages.

    English is a robust and mature language, as well. It's been in use for hundreds of years and its capabilities are well-known and understood by many. Try and match that with some ten-year-old language created by hairy UNIX administrators!

    Compilers and documentation for English are easy to get a copy of, and many are completely free or very affordable. Almost every college out there offers courses in English.

    There are many powerful IDEs available for English - OpenOffice, Microsoft Word, the list goes on.

    Unlike languages like Java and French, there is no central committee that says what English can and cannot 'do'. You're free to explore the potential of the language and come up with new instructions and invent new ways to use existing instructions.

    I honestly cannot believe that English has been overlooked in this debate. It's a perfect fit for GNOME.

    --
    using namespace slashdot;
    troll::post();
  4. OTOH by jabber01 · · Score: 5, Insightful

    Project requirements often dictate the choice of language.

    A developer who knows only one language is not a developer, but a one trick pony; a single-purpose tool that is easily replaced with a cheaper, off-shore alternative, for example.

    Learning the syntax of a new language should not be a significant challenge to an experienced, talented developer. And, it is experienced, talented developers who should be sought for this project. People who know (language X) and can not adapt to new requirements are not likely to contribute anything innovative, new, or original.

    All that said, I don't know Eiffel, nor the particular requirements of the Gnome desktop. If a more popular language fits the bill, great, that's the language that should be used. However, if Eiffel offers particular advantaged, through inherent features not forthcoming in something like C++ or Java, then guess what? A decent developer will eat a book or two over the course of a couple of weeks, and hit the ground running.

    --

    The REAL jabber has the user id: 13196
    What you do today will cost you a day of your life

  5. C/C++? by matusa · · Score: 5, Insightful

    One thing that I am sure has enraged many is the lumping of C and C++ together. I programmed primarily in C for about 5 years, and a couple months back learned C++ and now use that as my primary language.

    I used to write code in gtk+, and it was quite painful. Function calls look ugly, you are casting things non stop, and constantly finding gross ways to wrap data into a void * which you pass with signals.

    I've been writing apps with gtkmm lately and it is practically a sexual experience in comparison. I can write much cleaner apps, and do so much more quickly.

    I don't mean to appear elitist, but anyone saying C/C++, and furthermore that they are both finished, sounds like someone who hasn't really used C++. And no I don't mean writing an app with methods instead of global functions, new/delete instead of malloc()/free(), and replacing char * with std::string (in C++ you use char * all the time! std::string is another entity altogether); no no no I mean using C++ paradigms (I'm _not_ talking about OO--C++ has a plethora of interesting methodologies which result in extremely fast and safe code (we're not just throwing exceptions and building abstract class heirarchies every time we want to move a bit!)).

    What is important about C++'s heritage of C is _not_ the shared syntax--it's the fact that you can still figure out your overhead basically exactly (as well as you can in C, at least). But the rest is drastically altered. Go to boost.org to see what I'm talking about.

    Note that this is not an anti-C post--that would be ridiculous as not only do I love C but furthermore there are great gtk+ apps (gimp for example--gnome is a bloated mess and doesn't really count IMHO!).

    Remember: the rallying cry of OSS is 'show me the code'. If you think you have a nicer way to code, make it and then publicize. I'll stick to gtkmm for now, and recommend others take a look at it.