Slashdot Mirror


EiffelStudio O-O Programming Suite for Mac OS X

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."

19 of 42 comments (clear)

  1. Advantages? by Llywelyn · · Score: 2, Insightful

    What are the advantages/disadvantages of Eiffle compared to languages such as Ruby or Python?

    --
    Integrate Keynote and LaTeX
    1. Re:Advantages? by DAldredge · · Score: 4, Funny

      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!

    2. Re:Advantages? by mean+pun · · Score: 5, Informative
      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.

    3. Re:Advantages? by danigiri · · Score: 4, Funny

      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. =)

    4. Re:Advantages? by AK47 · · Score: 3, Insightful

      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.

    5. Re:Advantages? by ajagci · · Score: 4, Informative

      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.

    6. Re:Advantages? by Blitter · · Score: 3, Informative
      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.

      --
      I am Jack's writable stack pointer.
  2. Spend your time getting Lazarus working instead! by akejay · · Score: 5, Insightful

    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.

    --
    one, two, one two like a duck
  3. Eiffel is not bad, but... by coolmacdude · · Score: 4, Interesting

    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.

    --

    -You may license this sig for only $6.99.
    1. Re:Eiffel is not bad, but... by nacturation · · Score: 4, Informative

      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.

      --
      Want to improve your Karma? Instead of "Post Anonymously", try the "Post Humously" option.
    2. Re:Eiffel is not bad, but... by am+2k · · Score: 3, Informative

      "Contact Us" doesn't work in Camino either. Great work!

    3. Re:Eiffel is not bad, but... by ajagci · · Score: 2, Informative

      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 principles--a vendor of silver bullets--and people thought they'd get a bit of that automatically if they used Eiffel. Without that gimmick, Eiffel wouldn't even be used to the limited extent that it is used today.

  4. Safari. by Daleks · · Score: 4, Funny

    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 jkl@jkl.com, asdf@asdf.com, etc. were all taken. Meh.

    1. Re:Safari. by roskakori · · Score: 3, Interesting

      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 for minutes, produced an executable that was 2MB of size and crahsed when executed. now, this has long been fixed, but people keep telling it over and over.

      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.
    2. Re:Safari. by Lagos · · Score: 2, Informative

      There is a bug in the following Javascript on the page:

      function validate(aForm)
      {
      if (cookies_enabled() == true)
      {
      checkForSelection (aForm);
      }
      else
      {
      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.

    3. Re:Safari. by RevAaron · · Score: 2, Insightful

      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.

      --

      Working toward a usable PDA environment in the spirit of Newton OS: Dynapad
  5. Re:Unique Features? by __past__ · · Score: 2, Insightful

    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 language). Did I overlook something?

  6. If you want pure objects though... by Lord+of+the+Fries · · Score: 3, Informative

    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.

    --
    One man's pink plane is another man's blue plane.