Catch up on stories from the past week (and beyond) at the Slashdot story archive


Forgot your password?
Programming Businesses Apple IT Technology

EiffelStudio O-O Programming Suite for Mac OS X 42

name_already_in_use writes "Eiffel Software released their object-oriented programming environment for Mac OS X. It is a powerful language offering all the usual O-O wonders as well as few unique features of it's own (Design by Contract, generics). All compiled code can be run on multiple platforms including Windows, Linux, Solaris, and of course now Mac OS X, so there's no need to re-write code for different architectures."
This discussion has been archived. No new comments can be posted.

EiffelStudio O-O Programming Suite for Mac OS X

Comments Filter:
  • Advantages? (Score:3, Insightful)

    by Llywelyn ( 531070 ) on Saturday January 24, 2004 @03:01AM (#8073518) Homepage
    What are the advantages/disadvantages of Eiffle compared to languages such as Ruby or Python?

    • by DAldredge ( 2353 ) <SlashdotEmail@GMail.Com> on Saturday January 24, 2004 @03:16AM (#8073587) Journal
      It doesn't take over your higher brain functions and make you ask questions about it in every forum you can like Python and Ruby.

      That is a plus!
    • Re:Advantages? (Score:5, Informative)

      by mean pun ( 717227 ) on Saturday January 24, 2004 @09:52AM (#8074571)
      What are the advantages/disadvantages of Eiffle compared to languages such as Ruby or Python?

      Eiffel is designed for large-scale programming. For that purpose it has strong typing, generics (roughly: C++ templates done right), a good module system, design by contract (rougly: assertions on class members). All in all it is a well-designed language with two big flaws: it has a quirky syntax (sometimes different for the sake of it), and it is not popular; the price of the official compiler doesn't help.

      Python is in its own way also a well-designed language, but you don't want to write large programs in it, i.e. software that requires a team to implement. I don't know Ruby, but I suspect the same applies.

      Eiffel is also interesting in that the designer has never released a really free version of the compiler. Usually that is deadly for an obscure language. After all who would be mad enough to pay for a compiler without knowing the language? Somehow Mr. Meyer has earned his living all these years selling Eiffel compilers. I don't know any other language designers that have managed this.

      • Re:Advantages? (Score:5, Informative)

        by ajagci ( 737734 ) on Saturday January 24, 2004 @01:00PM (#8075342)
        Eiffel is designed for large-scale programming.

        It may have been intended for that, but a language that for years didn't even support type-safe separate compilation clearly wasn't designed for large-scale programming.

        All in all it is a well-designed language

        No, it is not a well-designed language and it never was. It is a language that sounds appealing to a software engineer because it seems to embody good software engineering practices (whether it does or does not is a separate debate). But in order to be a well-designed language, it first needs to get the basics right: the type system, separate compilation, a reasonable set of language constructs, etc., and Eiffel fell short there for years.
      • Re:Advantages? (Score:3, Informative)

        by Blitter ( 15795 )
        Eiffel is also interesting in that the designer has never released a really free version of the compiler

        well, i think there was/is a "personal" version for windows and linux that's free but limits the number of classes you can have in a program.

        if you want a "free speech" compiler, don't overlook SmartEiffel [], a pretty good GPL'ed implementation of the language.

    • by danigiri ( 310827 ) on Saturday January 24, 2004 @10:10AM (#8074612)
      Just one: it sucks.

      No, really.

      Well, just kidding, actually. I happened to have to develop a 25000+ lines of code project for college. In three months (along with other subjects of course). In Eiffel. It helped a little that there were three of us to complete it.

      The professor was the worst I have ever had in my long career. He basically told us: "you must complete this project with this zillion features to pass, it will be coded in a language called Eiffel, it is great, go get some documentation on how to code in it".

      It was a coding nightmare, coding 12h *everyday* for the last month. There is simply no other way to code a 25000+ lines project in an unfamiliar lang in so short a time. The bastards gave us a 'C'.

      Eiffel might be great and all, but please understand whenever I stand up and deface it.

      There, I had to say it, now I feel better. =)
    • Re:Advantages? (Score:3, Insightful)

      by AK47 ( 47846 )
      Eiffel is a great language, and Meyer's book is wonderful. However, we live in a C++-centric world when it comes to OOP. Much of this has to do with good marketing by AT&T and bad marketing by Meyers. From my personal experience, I can tell you this--you will live in a world of pain, if you learn Eiffel and then develop in C++. You will learn OOP right--and then see it done wrong. And every day, the hurt will continue. Spare yourself, and succumb to the popular methodologies.
  • by akejay ( 173331 ) on Saturday January 24, 2004 @03:14AM (#8073575)
    quoting from various places on the website:
    "The Free Edition license is for non-commercial use only. Pricing for the Windows, Linux, and Mac versions of EiffelStudio is US$ 4,799.00. Pricing for the Unix version of EiffelStudio is US$ 7,999.00."

    Almost thirteen grand for a "cross-platform" setup. Nuts to that.
  • by coolmacdude ( 640605 ) on Saturday January 24, 2004 @03:37AM (#8073648) Homepage Journal
    They shot themselves in the foot with licensing. The Eiffel model and syntax is actually much more logical (and some would say better) than C and Java. But they made their compiler and dev kit obscenely expensive, while the others were free. I just don't see them ever recovering from that. C/Java type syntax has become the standard and switching to something completely different would be difficult.
    • by nacturation ( 646836 ) <> on Saturday January 24, 2004 @04:03AM (#8073736) Journal
      They shot themselves in the foot with licensing.

      ... and also from the fact that their site doesn't work in Safari. Their "contact us" link doesn't even work (it appears to attempt to open a dhtml panel). I don't think they'll be getting too many Mac orders just yet.
      • "Contact Us" doesn't work in Camino either. Great work!
      • The site doesn't work (for me) with OmniWeb either.

        I've run across a couple of Eiffel proponents who evangelized the wonders of all things Eiffel, but I've never seriously looked at the language. And if they can't make their site work for a target audience, they're not likely to get me to look at it either.

    • LOL! I phrased my post in the past tense because I was under the impression their licensing model was now more reasonable. From the post above mine I can see I was badly mistaken. That is just ludicrous.
    • The Eiffel model and syntax is actually much more logical (and some would say better) than C and Java.

      Not really. During its adoption phase, Eiffel was a complete mess: it lacked important features (e.g., method pointers), it lacked type-safe separate compilation, and the language definition had other serious bugs. The language failed because it was poorly designed.

      The only reason people talked about Eiffel at all was because Meyer was also an advocate of what was considered sound software engineering
    • Good thing there are open source versions such as SmartEiffel [] and Fine []!
  • Safari. (Score:5, Funny)

    by Daleks ( 226923 ) on Saturday January 24, 2004 @05:15AM (#8073907)
    Anyone notice you can't download it with Safari? The website keeps griping about not having cookies enabled, even though they are. If they didn't even test their website with the most common Mac browser, then I wonder how well QA-ed their Mac port is.

    They also want your address for the free edition. Right. I wish companies would just let us download their software and have fun with it, hassle free. I could barely download RealOne player the other day because accounts for,, etc. were all taken. Meh.
    • Re:Safari. (Score:1, Informative)

      by Anonymous Coward
      Had to change the javascript to get passed the cookie check. Here's the mail I got with the links.


      Thank you for your interest in EiffelStudio's Free Edition for Macintosh.

      To ensure your success with your new Eiffel software, we highly recommend that
      you read Dr. Bertrand Meyer's acclaimed classic, "Object Oriented Software
      Construction, 2nd Edition," often referred to as the "bible of object-oriented
      programming". Reading this book will DRAMATICALLY accelerate your learning
      curve and satisfaction with Eiff
    • Re:Safari. (Score:3, Interesting)

      by roskakori ( 447739 )

      If they didn't even test their website with the most common Mac browser, then I wonder how well QA-ed their Mac port is.

      eiffel uses "design by contract", which is a very powerful concept to avoid bugs or at least find them quickly at runtime. my impression always has been that because of this, eiffel developers hardly perform any additional quality assurance measures.

      one of the stories that destroyed eiffel's reputation for years (decades?) was how very early compilers treated hello world: it compiled f

      • Re:Safari. (Score:3, Insightful)

        by RevAaron ( 125240 )
        compilers may improve in generating more efficient binary code from eiffel. computers may get faster, making that hello world file take less than minutes on end.

        but the one thing that really won't change is the language. it still takes 20 lines to make a hello world in Eiffel.
      • >>it almost reminds me of those computer science lectures where one proves that a program is correct, and then walks home without ever implementing and executing it.

        This reminds me of a class that I had in which the teacher passed out a printed copy of a program and asked if it would work. I stated "No", while everyone else said "Yes."

        The teacher stated that it had worked when he typed it in. I insisted that it shouldn't have. It turned out I was right. The VAX pascal compiler wasn't checking for ar
    • Re:Safari. (Score:2, Informative)

      by Lagos ( 67371 )
      There is a bug in the following Javascript on the page:

      function validate(aForm)
      if (cookies_enabled() == true)
      checkForSelection (aForm);
      alert ("You must have cookies enabled to proceed.");

      Apparently, cookies_enabled() is unreliable under both Safari and OmniWeb. To fix this, either change the condition to true or use one of the direct download links someone has been kind enough to post below.
    • Neither of them work for me, both complain about cookies not being enabled (they are). Whatever. Since I could not follow their legitimate download process, I used the direct download link from another post.

      As for the email address thing, that's one of the niceties about owning your own domain - you get an infinite number of b.s. address (",, etc.). Then you can specify one rule on the server that routes them all into a junk folder.
  • by roskakori ( 447739 ) on Saturday January 24, 2004 @06:35AM (#8074073)
    • It's funny because the links you sent are regular ftp links and refer to files available for download. Click on the link in IE or Netscape and you can download the file. Click on it in Safari and you get a screen full of crap - what kind of shitty browser can't even deal with a ftp url? Seriously, is it any wonder nothing works in Safari, on account of it being so lame? That's what just annoys me about Macs sometimes, too much incompatibility with other software.
  • by Anonymous Coward
    These guys have been spamming the Mac forums. Posts everywhere about this (and nobody cares).

    I guess Slashdot got spammed as well.
  • Since when are design by contract and generics unique to eiffel? Ada has generics, plenty of languages go farther and have full polymorphism... Design by contract is easy enough to do in any language.


    • by __past__ ( 542467 )
      As far as I know, Design By Contract is only easy to do if a) the language has explicit support for it built in, like Eiffel or Sather, b) the language is flexible enough to change important aspects of the object system in plain user code, like Common Lisp, or c) you consider ugly hacks with nonstandard preprocessors easy, like with the packages that turn magic Java comments into checked assertions. I don't much like the c approach, but I don't see another way to do DBC in Java (or C++, or whatever other la
      • You could use AOP tools (e.g.,, which generally let you implement design-by-contract as a special case of more general mechanisms.

        In any case, between unit tests and the regular use of assertions, you pretty much get all the benefits of design-by-contract in just about any language. Explicit language support for design-by-contract is not needed, and design-by-contract is really just selling old ideas under a new name.
        • Design by contract is really only interesting (or, imo, worth using) when it's implemented as a language feature (or at least a compiler one). The whole point is that pre- and post-conditions are checked for you automatically, if you have to do it yourself you may as well do it with assert macros everywhere. It's an old idea, of course, the whole point of it being "design by contract" instead of "use lots of asserts to ensure validity" is that you define the conditions and the checks are handled automatical
  • by Lord of the Fries ( 132154 ) on Monday January 26, 2004 @01:56AM (#8085847) Homepage
    May I suggest you look at Smalltalk too, which has been running on MacOSX for, well, pretty much since it came out, and didn't seem to warrant an anouncement on slashdot.

    Both VisualWorks Smalltalk and Squeak have wicked cool environments, lots of neat stuff, public code repositories with lots of stuff, good friendly communities, run quickly, are objects thru-n-thru and of course do the xplatform thing at the binary level.

    That language, Objective-C, which makes much of the cool stuff that is OSX possible, was after all inspired by Smalltalk.

"Don't worry about people stealing your ideas. If your ideas are any good, you'll have to ram them down people's throats." -- Howard Aiken