Thursday, September 21, 2006

 

Do users need a truly open Eiffel compiler?

The recent SmartEiffel fracas highlighted a situation that's been developing for more than a decade. The Eiffel community has several open source compilers, but does not yet have an open compiler.

The open-sourcing of EiffelStudio has provided an abundance of goodies to Eiffel developers, but the product directions of EiffelStudio are not set by the users of the open source edition. Naturally, the product directions are set by the need of ISE to service their commercial customers, and by the needs imposed by the use of EiffelStudio at ETH.

Similarly, the development of SmartEiffel is driven by the goals of Dominique and his team, and it's pretty clear that those goals often differ from those of the SmartEiffel users.

Visual Eiffel has been open source for a while too, yet it has a provision that patches cannot be accepted into the trunk unless they are also suitable for the proprietary edition.

A truly open Eiffel compiler, with an open development process controlled by its users, would offer many advantages. Foremost of these is that users would discover that it's actually worth their time to contribute - patches will be accepted if considered useful by the users as a whole. This creates a positive feedback loop whereby more people contribute, the product gets better, more people use the product, and even more people contribute.

Another advantage is that open projects tend to emphasize interoperability. To paraphrase something I found at rosegardenmusic.com:
Because of the spirit of openness and co-operation, there's an incentive for people working on quite different applications, libraries and tools to make them work together so as to strengthen all of the pieces.
This is quite unlike the situation we have now where each compiler has its own language and tools, and refuses to support the others.
Stay tuned...

Comments:
What about the gobo eiffel compiler ?
 
Frederic, I consider GEC to be "Eric's baby". There's no open community process around its ongoing development.

This is not necessarily a bad thing for GEC, because Eric is a sensible and talented leader, but it's different from what I have in mind.
 
Well - most open source projects have a "Benevolent Dictator for Life". I would not mind this being Eric, he is a nice guy.
 
Bernd, from the link that you posted: "Not all, or even most, open source projects have a BDFL".

It's not necessarily wrong to have a BDFL and, as you say, it would be hard to find a better one than Eric.

But there's space (and need) in the Eiffel world for at least one non-BDFL project amongst all the BDFLs.
 
The BDFL is a perfect term. I don't know of a FOSS project that is succesfull(great engineering and the like), that didn't have a BDFL at it's inception.
I can only image how hacked my project's code(and pay) would be if I as a tech manager wasn't their to DEMAND extandability/reusabilty and a general long term view of things.
I use open source everyday, but I am torn in respect to this post.
 
BTW Roger, what happened to the CoolEiffel project? The page does not seem to exist anymore on SourceForge.
 
Eric, I don't recall the exact circumstances behind the taking down of the CoolEiffel project, but little interest had been expressed by the Eiffel community.

I still think CoolEiffel's approach is sound (of making an Eiffel-like langauge work more closely with the .NET conventions - like Eiffel# did before ISE changed track and implemented full Eiffel for .NET) and I'd like to see the ideas behind CoolEiffel taken forward one day.

But it's not something I have time to give to right now - I've got plenty of interesting projects "on my plate".
 
I would rather use a commercial projcet or a BSD or LGPL licensed compiler.
 
Post a Comment



<< Home

This page is powered by Blogger. Isn't yours?