Tuesday, February 26, 2013

EclipseFP 2.5.0 released

It's my pleasure to announce another release of EclipseFP, the Eclipse plugins for Haskell development.

In this feature, I've added support for cabal-dev, as demonstrated in this video.
I also have added a "organize imports" function on an opened source file. This cleans the import lists by only importing what's really used and formatting it in a manner similar to what stylish-haskell does.

I have also tried to improve the performance of the editor, and fixed all bugs we were made aware of. Syntax highlighting can now highlight more tokens in different colors (non alphanumeric symbols, different types of comment).

Full release notes can be seen here.

As usual, to upgrade just point your Eclipse to http://eclipsefp.sf.net/updates. Report any issue to the SourceForge forum.

Happy Haskell Hacking!


Tom Crockett said...

Thanks for the update! EclipseFP is showing a lot of promise.

One annoying thing is that there is a perceptible lag when typing in the editor, enough for it to be distracting. It seems like too much computation is being done in the UI thread. This is actually a major reason why I haven't fully migrated my Haskell development to EclipseFP yet. A source editor is first and foremost a text editor, and any pure text editor that performed as poorly as this would be shunned!

Another minor annoyance on Mac at least is that EclipseFP doesn't seem to know about the standard place to look for executables, which is $HOME/Library/Haskell/bin/. Because of this, it wants to cabal-install all the helper executables even when they're already installed, and even after it installs them it can't find them; you have to manually point it to each one in the preference page. The "try to find executable in common directories" doesn't look in what should be THE most common directory.

Again, aside from those issues it's looking great!


JP Moresmau said...

Hello Tom, sorry to hear about your issues. This new version of EclipseFP should have faster performance in the editor. There is actually not that much being done in the UI Thread, but Eclipse does the syntax highlighting in that thread by default. There is a preference setting that allows you to specify a size for files over which the syntax highlighting is done in a thread, so you may see a lag in coloring, but at least you can type fast. But it's weird, as I said I have worked on that performance, and I use EclipseFP myself for all my Haskell development of course and don't notice a lag when typing (and my machine is not that powerful).
For the Mac executable location, I'll check the code, but there are lots of Mac users and nobody reported that issue before. I think we actually use Haskell to get the location where executables are installed...

Tom Crockett said...

What's the preference to do syntax highlighting in a background thread?

It's surprising to me that you don't notice the performance problems on an older machine; my machine is a very new 2.6 GHz MacBook Pro. Here's a quick test: just mash a bunch of keys as fast as you can for a few seconds and then stop. When I do that for N seconds and then stop, the editor spends at least N seconds catching up. Compare this to the Java eclipse editor, which it is impossible to get ahead of.

Anyway, thanks for looking into it!

JP Moresmau said...

Tom, I've just released 2.5.1. It fixes an issue in the syntax highlighting preference page. At the bottom of that page is the setting for the page limit to do syntax highlighting in a different thread.
2.5.1 also searches for executables in $HOME/Library/Haskell/bin/
For the performance, I can see no slowdown. Sometimes an over-zealous antivirus can slow down invocations of buildwrapper?

Tom Crockett said...

Thanks, after I set that preference to 0 the text input keeps up. The syntax highlighting lags behind a bit, but that's an acceptable price to pay.