Thursday, May 14, 2015

EclipseFP end of life (from me at least)

Hello, after a few years and several releases, I am now stopping the maintenance of EclipseFP and its companion Haskell packages (BuildWrapper, ghc-pkg-lib and scion-browser). If anybody wants to take over I' ll gladly give them all what's required to get started. Feel free to fork and continue!

Why am I stopping? Not for a very specific reason, though seeing that I had to adapt BuildWrapper to GHC 7.10 didn't exactly fill me with joy, but more generally I got tired of being the single maintainer for this project. I got a few pull requests over the years and some people have at some stage participated (thanks to you, you know who you are!), but not enough, and the biggest part of the work has been always on my shoulders. Let's say I got tired of getting an endless stream of issues reports and enhancement requests with nobody stepping up to actually address them.

Also, I don't think on the Haskell side it makes sense for me to keep on working on a GHC API wrapper like BuildWrapper. There are other alternatives, and with the release of ide-backend, backed up by FPComplete, a real company staffed by competent people who seem to have more that 24 hours per day to hack on Haskell tools, it makes more sense to have consolidation there.

The goal of EclipseFP was to make it easy for Java developers or other Eclipse users to move to Haskell, and I think this has been a failure, mainly due to the inherent complexity of the setup (the Haskell stack and the Java stack) and the technical challenges of integrating GHC and Cabal in a complex IDE like Eclipse. Of course we could have done better with the constraints we were operating under, but if more eyes had looked at the code and more hands had worked on deck we could have succeeded.

Personally I would now be interested in maybe getting the Atom editor to use ide-backend-client, or maybe work on a web based (but local) Haskell IDE. Some of my dabblings can be found at https://github.com/JPMoresmau/dbIDE. But I would much prefer to not work on my own, so if you have an open source project you think could do with my help, I'll be happy to hear about it!

I still think Haskell is a great language that would deserve a top-notch IDE, for newbies and experts alike, and I hope one day we'll get there.

For you EclipseFP users, you can of course keep using it as long as it works, but if no other maintainers step up, down the line you'll have to look for other options, as compatibility with the Haskell ecosystem will not be assured. Good luck!

Happy Haskell Hacking!

17 comments:

Daniel Pratt said...

I have mixed feelings about this announcement. On the one hand, what you accomplished with EclipseFP was really impressive. And it's too bad you couldn't get folks to help you with it.

On the other hand, by far the worst thing about EclipseFP is Eclipse. I do not like Eclipse. At all. So if you end up devoting your considerable talents to creating a better Haskell experience for some other code editor/ide, then maybe this is a win overall.

Vagif Verdi said...

This is really a failure of Eclipse as a very complex environment to work with and contribute.

The reason you haven't seen many people contributing is because entrance barrier is very high.

I think a much more approachable environments like atom editor would allow more people to join and help.

Look for example how active haskell-mode for emacs is, even though it is for such bizzare (for most people) editor like emacs.

CessationOfTime said...

A few months back I began playing with creating an IDE using reactive-banana-wx and the wxAuiNotebook widget. I got it to the point I could edit syntax highlighted files and open them from the wxTreeCtrl and began integrating BuildWrapper into it. I'll have to try building off of ide-backend now. But I really think a wxWidgets based IDE would be best, and one that can be built from Nix.

Unknown said...

Thank you!

It was a reason at least for me to code haskell here and there :-) But I'm too busy to make even pet project worth talking about.

Obviously the community is too small and too fragmented. Some hate this ide, that ide, probably all ides and vast majority of haskellers will hate anything not in written haskell.

It is a pity! You have created really great haskell support. It was not any prove of concept but solid, feature rich ide. Thank you!

Leonardo de Moura said...

https://github.com/chaika2013/ide-haskell

Sami Badawi said...

EclipseFP is great.
It has helped move Haskell more into the mainstream.
Thanks for all the work!

Vlatko Bašić said...

Thanks for all your work. EclipseFP helped me a lot to enter Haskell world. :-)

Rene said...

Thankyou for EclipseFP.I have enjoyed using and have found it very useful.

clanehin said...

As one of the people who contributed in an extremely minor way and always imagined I would Get A Round Tuit, I'm sorry to hear this. It really was an enormous undertaking for one person, and required a variety of specific and unrelated skills (eclipse plugin, SWT/JFace, haskell compilers) that not many people have. In my case, I do eclipse plugins at may day job and the idea of coming home and working on them was always just . . . no . . .

Thanks for everything you've put into this. I'll look forward to seeing what you do next.

none said...

EclipseFP really helped me when I was writing Haskell (some years ago now.) So long and thanks for all the fish!

Daniel F said...

Thank you for your work! I haven't been a big fan of Eclipse, but what you have managed to do with EclipseFP is pretty impressive -- it is actually a very useable and stable solution for developing Haskell projects.

Have fun with new projects!

Paco said...

I would like to thank you for your great effort in this project. Actually I have been using eclipsefp for three years in a elective course on Functional Programming, using Haskell and .NET technologies, and it has been much useful. Maybe I will continue to use it, while considering other alternative IDEs.

Thanks again, Paco

lazyswamp said...

Thank you for your efforts! EclipseFP have made my 1st year university students, who had never dreamed of using any text-based editor such as emacs or vi, be easy to access to Haskell programming.

Andrew Gibiansky said...

Thank you for all your effort with EclipseFP! When I was starting out, it made Haskell seem much more approachable, although I only used it briefly.

If you want to collaborate on some Haskell projects and like IDE-like things, I would love to have help with IHaskell. It's not quite an IDE but in some ways is pretty close, and there's tons of stuff that could be done to make it a really cool environment. Feel free to get in touch, I'm always happy to help onboard people to collaborate :)

Han said...

Hi JP,

I am very sorry to see that you are stopping with this great project. I am using EclipseFP for a couple of years now, and I really love it. It has a lot of cool features. I think that you have done an excellent job! For windows users like me, EclipseFP has (and still is!) been an easy way to start with Haskell, at least for those that know Eclipse already. I really want to thank you very much for all the work you did. THANK YOU!

I can understand your dissapointment of hardly anybody helping out. It is more fun to work in a team.

I hope you find another cool project with cool peopels to do more cool things!

All the best!

sn said...

I meandered onto this page via a series of links after getting failures with installing BuildWrapper with the latest 7.10 release of Haskell Package. I totally understand your reasons for having to give up this project, but would you please consider at least putting a warning message on your EclipseFP page http://eclipsefp.github.io/ so others are at least warned that they are attempting to install something that may not install?

cheers

Dmitry said...

For those running into "An error occurred while automatically activating bundle net.sf.eclipsefp.haskell.ui". Install the platform 2014.2.0.0 from https://www.haskell.org/platform/prior.html, if you can live with a 3 years old version.