EiffelStudio 5.2 For Linux Released
sniesen writes "ISE finally released EiffelStudio 5.2 for Linux (and other UNIXes) today. There's free non-commercial editions available for both Windows and Linux. It's good to see that the best O-O language available still strives quite a bit."
EiffelStudio is an implementation of an Eiffel compiler, a few class libraries and an IDE. ISE is Bertrand Meyer's company, who is the "inventor" of Eiffel.
go dot net!
yay!
foe me, freak me.
A good programming language that no one cares about or uses.
1. Bad signature
2. ?????
3. Profit
Will we begin the "mi dad beats your dad" figth?
Programming can be fun again. Film at 11.
This is a development environment for creating applications in the Eiffel programming language. Eiffel was created by Dr. Bertrand Meyer.
Eiffel is a completely OO language supporting several advanced features and particularly focused on creating safe bug free systems. It's main claim to fame is its integration of design by contract into the language with method pre and post conditions and class invariants. This allows a developer to express the possible states an object can be in, and the necessary pre and post condictions before a method can be called on an object. It also support a very safe method of expressing multiple inheritance that allows the developer to control which ancestor a method is inherited from if there is a conflict, thus allowing the developer compelte control over the inheritance of methods. It also supports garbage collection. I'm sure there are other things it supports that I'm forgetting.
Bertrand Meyer is also the author of "Object Oriented Software Construction" which has been described as: "The definitive tome on Object-Orientation..." It is well worth a read. A review was done here in 1998. I picked up the book because of that review. I personally learned a great deal from it. I had been doing OO programming for some time at that point, but after reading OOSC I "owned" the methodology. I have had every employee I have hired to do development read significant portions of it as part of their training. I can't recommend it too highly. This from a person who has never used Eiffel. What he has to say is highly valuable regardless of what OO language you are using.
MarkX
I've been looking at eiffel recently. I need to sit down and code something in it to see whether it's really what I want and read more than the basic tutorial, but I'm facinated by some of the things it does.
:-) ), or eiffel to get decent performance.
It generates very fast code. Other than C/C++ and ML, it's right up there. No Java sluggishness.
It's got *smart* assertions. I'll bet the compiler can have tons of fun with optimization. Lots of room to make it blisteringly fast.
It's safe. No writing to random memory.
The templating system is to *die* for. It does what I wish ML could do. Basically, from my brief skimming of the thing, leave a type out on a parameter, and when you pass in different types it creates templated functions. Cool.
The biggest thing is pretty much the performance. You can use C/C++ (not safe languages, not all that designed around application development), ML (not great if you aren't one of those functional language wackos
After that, the hit starts to become uncomfortable to me. A brief stint with QuickBASIC and later MATLAB left me hating slow languages -- it always ends up with you doing 10x the work to get the one bit of the program that must run quickly to zip along.
Uh...what else. The build system is integrated into the language, like SML. Definitely weird if you're used to GNU Make, but on the upside you don't have to use that godawful autoconf!
There's a free (fairly good) eiffel compiler, called (IIRC) SmallEiffel if you want to play with it. The one listed in the article is commercial.
May we never see th
Don't _ever_ give your name to these assholes - once you get on their mailinglist, they won't let you off it no matter what you do. I tried for _months_ to get off their list, to no avail. :(
That email account is now dead.
Eiffel is on my list of languages to learn, and I've been wandering if the Free SmallEiffel is a complete, useful implementation; or whether the official EiffelStudio would be preferable. Anyone out there with experience in both?
--
CPAN rules. - Guido van Rossum
Since september, SmallEiffel has been renammed to 'SmartEiffel'. Official site here : http://smarteiffel.loria.fr/
I only know SmartEiffel as its developped at my university and i've learned OO programming with it. For casual development id definitely use Java but Eiffel is certainly helpful when failproof software is needed. The libs of SmartEiffel are really limited but its enough for a quick look at the language.
Look more carefully next time: ;-)
Here's a screenshot
$4799 if you want to use it for commercial programs?
I am sorry but that is about 10 times too much.
If you want people to use it then it has to be cheaper.
See my blog http://ilovecookes.blogspot.com/ for light hearted technical information.
Both implementations look very promising, but there's always a problem. I've been aware of Eiffel for at least 9 years, but have never been able to use it for a real project, and, unfortunately, it looks like I will still not be able to.
The barriers now are the cost of the commercial IDE, which is pretty far out-of-line (but if that was the only barrier, it would not be enough to keep me from using it). My co-developer is a Microsoft user and is very pleased by the idea of being able to use his Visual Studio environment. So they've got at least one developer here interested that way.
The more important barrier is lack of a ready-to-roll set of tools for MacOS X. Normally I'd not be averse to becoming beta testers, but we can't bet this project on the quality of a beta.
I'll check back in another 9 years, I guess.
It's these "minor" practical matters more than anything else which means I'm still using the living hell that is C++ for my bread-and-butter work.
Paul R. Potts
Does this mean they actually implemented a fix to the covariant-parameter unsafety that used to exist? I haven't paid attention to Eiffel for a few years, so I can't be surprised if they have.
For those who don't know, earlier versions of the Eiffel language had a serious bug whereby you could write a program that would compile just fine but would end up calling a method on an object that didn't implement that method, resulting in an ungraceful crash. The problem was due to the way method parameter types are allowed to change in subclasses, and IIRC a couple of different fixes were proposed, but I had heard rumors that the Eiffel implementations did not actually use them, leaving the language unsound.
So what's the current story on this?
JV
No, I'm aware that you need to vectorize your code. The problem is that this is really a pain in the butt to do -- hence 10x the work. I suspect that a vetran MATLAB coder is pretty good at vectorizing. Better than I am at least -- for me, anything above basic operations takes a bit of thinking. Also, it makes experimenting annoying -- you find a fast way to vectorize some series of operations, and then you need to restructure your code...
I mean, I'm quite fine with the MATLAB designers accelerating the beejezus out of matrix operations. But give the language enough pep to let them use more traditional program structure if it's more convenient.
Also, while it's easy to vectorize most things, I remember a friend doing image recognition/generation research over the summer, and using MATLAB. He spent three days tracking down one vector operation that was far slower than he had expected (I think there was an operation that required growing an array or something). He could have trivially done this in C or another "fast" language, but ended up doing some logarithmic pre-resizing or something to keep the thing humming along at a decent clip. [shrug] I don't remember the details very well.
I've never used APL, so I can't comment there.
May we never see th
I never understood why they limit objects created on one thread to that thread. It's incredibly common to have a producer thread that enqueues objects for another thread to consume.
But in the Eiffel world, they talk about sending data over tcp/ip to solve this.
Does anyone know the reasons? I understand that the GC may be a lot simpler to implement, but this can't surely be the actual reason, can it?
Regards, Tommy
For what they did to us at Pearl Harbor!
I am very small, utmostly microscopic.
As an Eiffel user I agree with your comments on Bertrand's OOSC book - what the actual Eiffel language represents is the real-life IMPLEMENTATION of all the concepts and design methodology as detailed in the book. Therefore, if you think the book is of much value then you are seriously missing out on the benefits it extols by not using the only language and IDE which really puts those ideas into practice. Sure, the methods and ideas are applicable to all O-O languages but the point is that these languages were not designed around these ideas and so inherently require many work-arounds to achieve the same or similar quality of systems. Naturally such 'work-arounds' tend also to break the rules of the methodology in the first place, so you can easily end up back at square one despite the best initial intentions.
The real problem Eiffel has it that people won't give it a go. It may, or may not, be the best O-O language avaible today but that doesn't really matter if nobody will use it.
Rake Free + Mac Poker: CardCrusade
In the future you might want to apply a filter to bounce back the message to the sender (if your email program supports this).
That's what I did for an endless barrage of ziffdavis stuff after downloading a file off one of their sites. Same thing... opted out of all of the send notifications but was getting about 4 spams a day.
Most likely, they will remove you from the list after receiving the bounced email thinking the account is bunk. In either case, as long as the filter is on, you will never know the difference.
come on fhqwhgads