[mercury-users] IDE...

Jonathan Morgan jonmmorgan at gmail.com
Thu Oct 19 13:02:55 AEST 2006


On 19/10/06, RMJ <radse1 at yahoo.com> wrote:
> Thank you for making things clear regarding the IDE.
>
> Anyway, I can't help with Windows but for the 'nix
> platforms I think I can spare time to develop IDE for
> KDE/GNOME/others (either Qt or Gtk libs) using the
> available free (GPL, LGPL, etc.) development tools.
> I'll need your help to specify what the IDE is
> expected to do. I hope you don't mind having the IDE
> written in a language other than Mercury. I hope in
> the future I and/or others can find time to write
> Mercury bindings for Qt and for Gtk to make desktop
> developmet part of what Mercury can easily do on the
> 'nixes.

I am currently working (somewhat intermittently) on a binding
generator for Gtk+, based loosely on the binding generator for Gtk#.
For this reason I would not advise working on this.  I would not
advise writing a binding for Qt unless you have some kind of a binding
generator, as you would need a C++/C binding before you could (easily)
bind from C to Mercury.  My inclination would be to prefer a binding
to wx, mostly because of licensing (LGPL + static linking vs. GPL or
commercial).

In regards to the development of an IDE:
1. Developing an IDE in Mercury is possible, but I'm not convinced
that it is desirable.  An existing IDE supporting plugins (e.g.
eclipse or Visual Studio) is likely to do much of the work necessary,
which you would have to repeat.
2. Depending on how much you are wanting your IDE to support, you will
probably want a parser for Mercury.  The approach that was taken by
Visual Haskell was to turn large parts of GHC into libraries, and then
to use these libraries from their Visual Studio plugin.  In addition,
they used the COM interfaces from Visual Studio.  I imagine it
wouldn't be that difficult to enhance mcorba to support COM, but it
doesn't sound like you are likely to go down the Visual Studio route.
The paper on Visual Haskell
<http://www.haskell.org/~simonmar/papers/vshaskell.pdf> has lots of
interesting things about IDE design for a functional language.
3. If you build on eclipse, or use one of Tcl/Tk or Qt or wx or Gtk+,
then it should probably be portable to Windows, so long as you don't
make any nasty assumptions about the system you are working on.
4. I believe Clean has an IDE written in Clean, using their ObjectIO
library.  This may be worth a look.

I suspect you may be right about an IDE adding appeal to a language,
but I doubt I would use it for anything other than testing.

Jon
--------------------------------------------------------------------------
mercury-users mailing list
Post messages to:       mercury-users at csse.unimelb.edu.au
Administrative Queries: owner-mercury-users at csse.unimelb.edu.au
Subscriptions:          mercury-users-request at csse.unimelb.edu.au
--------------------------------------------------------------------------



More information about the users mailing list