Jump to content

eiffel


windstarz

Recommended Posts

Eiffel is not new at all.

I looked into it a little bit, and it seems pretty decent. However, it is 100% controlled by a sinlge company, relatively expensive to code under (at least compared to most "free" languages), and it does not seem to ahve much support in industry.

Seems like a decent teaching language, but not real useful to learn as far as something that someone will pay you to do.

Jeff Heidman

Link to comment
Share on other sites

New is a relative term in relation to programming languages. It was initially concieved in '85, (still a teenager!) Certainly it's young when compared to Kobold or C++.

Anything is expensive when compared to something 'free'. ;)

It looks to me like it was fairly useful to Hubert, and I don't think he is a teacher. ;)

Link to comment
Share on other sites

However, it is 100% controlled by a sinlge company

SmallEiffel - Free Gnu Eiffel Compiler

Visual Eiffel

ISE

Hastlenbach Eiffel

it does not seem to ahve much support in industry.
It's used mostly in Engineering and Financial applications and of course in education because funny enough it uses many of the theoretical principles that an Object-Oriented Language should have. You're correct that it's not in widespread use but there are a lot of high profile customers that use it when they need something that is "bullet proof", including HP, the Chicago Board of Trade and even the German military in their rocket systems.

A great book that covers many of the benefits of an Eiffel like language with many comparisons to others is "Object Oriented Software Construction" second edition by Bertrand Meyer. Even if you never use Eiffel and are just interested in programming I highly recommend it as one of the best books I've ever read on the subject.

Hope that helps,

Hubert

Link to comment
Share on other sites

Originally posted by Otto:

New is a relative term in relation to programming languages. It was initially concieved in '85, (still a teenager!) Certainly it's young when compared to Kobold or C++.

Anything is expensive when compared to something 'free'. ;)

It looks to me like it was fairly useful to Hubert, and I don't think he is a teacher. ;)

It isn't young compared to other OOP languages. C++ isn't much older, and Java is probably newer, or close.

Anyway, my point was just that it was a relatively mature langauge, despite its being pretty much unknown. This is a good thing.

And yes, Hubert seems to have gotten great use out of it. So, if you want to become a freelance game designer, then maybe Eiffel is a good idea. I am betting that Huberts success has a lot more to do with Hubert than it does his chosen language.

But there are lots of freelance games that haven't used Eiffel. I imagine it all depends on what you want to do in the long run.

But if someone is going to learn a language, I wouldn't recommend Eiffel unless they had no intention of ever trying to market the skill. Outside a very few limited places, it is relatively unknown.

If they are looking for a good "teaching" language, then it might not be a bad idea, although Java has a LOT more support out there, and a lot more resources. Eiffel does seem to ahve a much more rigorous implementation of OOP than Java.

Hubert, where can one get a hold of those alternative Eiffel compilers? I played around with the free trial you turned me on to, but it was only for 30 days, and I wasn't about to shell out $200 for something I may never use.

Jeff

Link to comment
Share on other sites

Eiffel seems very similar to Ada, another relatively obscure language without a large support community. The increased error checking makes the programming a little more tedious than C++, but results in better code for applications like defense systems or finance which require a high standard of reliability.

Ada is available on the free gnat compiler and there's other free documentation and IDEs for Ada. I know West Point is teaching Ada, so it's alive and well.

My hat's off to Hubert for choosing to use this type language for game programming. Since he's gotten everything to work well so far (windows-interface, graphics, AI, etc.), maintaining and upgrading the code should proceed smoothly.

Link to comment
Share on other sites

FYI, there is a mySQL Eiffel wrapper, and a number of other third-party integration bits and pieces. So, while small in installed base, it is thriving.

You can write good solid code in any language. The questions are:

- how is the maintenance (80% of the lifecycle of a product).

- how easy is it to make a mistake?

- if you do make a mistake, does the compiler find it or does a user?

So, maintenance of assembler is brutal, it's really easy to make a mistake, an you won't know until the entire system crashes.

Mainenance of C/C++ is not too bad iff the programmers rigourously follow good coding standards (not likely). It's easy to make a mistake (working with pointers and memory allocation/deallocation). The compiler will _not_ find either of the two big mistake areas just mentioned.

Maintenance of Java is in the same realm as C/C++. Making a mistake is a little harder - the try/catch exception error handling system is pretty clean, and there are no pointer or memory allocation. The compiler will catch most of your system-killing issues (and it's strongly typed).

I don't know where Eiffel fits into these categories. Presumably it does well in the second two, hence it is used in mission-critical apps (I know it's strongly typed, which is a start).

Link to comment
Share on other sites

×
×
  • Create New...