Monday, November 23, 2009

EclipseFP 1.109.0 is out!

A month exactly after the previous release, I got another release of EclipseFP out! I tried to fix some of the issues that people reported, to improve the overall stability of the plugins and incorporated some new features that I hope could be useful (generation of extensions and ghc-options field in Cabal from the preferences, some quick fixes on GHC warnings...). I'll need feedback from users to know what features are really needed and could make a different to Haskell hackers.

On a related note, I read that in "Coders at Work" Simon Peyton-Jones talks about the need for Visual Studio and Eclipse based IDEs to get more people interested in functional languages. I hope that my modest contribution helps...


Watto said...

Thanks for the good job.
My opinion is that Haskell have to be better integrated to existing mainstream IDE-s and better support for integration with other languages (DLL etc).

pavel said...

I have been working for few weeks with this plug-in and, as a beginner Haskell programmer, I found it very useful. 1.009 solved some of problems of the previous version. So I would encourage to continue developing the FP plug-in.

Features I miss more are:

Refactor -> Rename

Project Explorer
Object Browsing: data declarations and functions, at project and file level

and IMHO they deserve some effort to be implemented in the short term.

In general I would try to reproduce as much as possible the user experience that Eclipse provide to the Java programmer: Source, Refactor, Surround, ...

There is another problem, but it is probably my fault. I was unable to run the compiled Haskell application in Console window, but I ran it from the command prompt. (I am working in Windows XP).

If I Run configuration
I set the working directory (absolute path), in automation the command to launch (I tried both absolute and relative path to exe), and arguments.
I always get the error "Could not locate the executable to launch".

JP Moresmau said...

Pavel, thanks for the feedback. I'll see what I can do in the next releases for refactoring and such...
About the run: for the moment what runs is the interpreted source in GHCi. So the path used is the path to the GHC implementation you supply in the Preferences. The command in the automation flag is a command you'd type in GHCi (like main, say). This doesn't require that your project has an exe.
Delete your run configuration, then right click on the module you want to launch and choose run as GHCi session. It should load all the dependencies correctly and give you an interactive prompt inside the module.
Hope this helps

pavel said...

JP, thank you for the suggestion. I knew about this, but what I would like to do is to execute (1 click) a batch command rather than an interactive session.
This is something I would expect to do in the "Eclipse/Java way".

JP Moresmau said...

OK, you're trying to launch the executable that GHC generates of your project? It should be in .dist-scion/build/YourProjectName/YourProjectName.exe. You should use an "external tool configuration" in Eclipse and reference your bat through "browse workspace". Works for me.

JP Moresmau said...

Pavel, I have added support for the same view than Outline to appear in project explorer. You'll be able to expand the tree under a source file name to see what's in there, and double clicking will take you to the element. If you want to try it out, build eclipsefp from the github sources.


pavel said...

Cool! It seems it works fine. Just a bit slow on loading the first time. I think this is very important and useful feature. Thank you!

Johann Höchtl said...

I would very much apprechiate debugging support. I have learned so far, that debugging in an FP language and especially Haskell is often done through other means, but GHC provides a decent debugging interface and it would be very cool to integrate that.

Especially for converters coming from a non FP-language inside VS, hack-run-crash-debug is the normal way of coding there.

BigD said...

This is fantastic; for all Mac-Users out there, set the options to:

-optc-m32 -opta-m32 -optl-m32

(as pointed out here)

Gaius said...


I'm having some trouble with the instructions at specifically:

C:\Users\hammondg>git clone git://
Initialized empty Git repository in C:/Users/hammondg/eclipsefp/.git/
fatal: remote error:
Could not find Repository jpmoresmau/eclipsefp

Has this moved to somewhere else?



JP Moresmau said...

Yep, it's an error, it should read JPMoresmau with capitals:
git clone git:// works for me.
Page has been fixed.

Gaius said...


Thanks :-)