I had a little time in the last weeks (finally) to get some things I
started to work on in the end of 2004 working. Here is a snapshot
version of the current state.
There is now a native parser bridge to the parser in haskell-src that
works with JNI. I have done this on Windows so far with a dll. For
Linux, afaik we will have to wait until the PIC support in GHC is ready.
I have done the modeling in the Halamo for imports and exports, and I
have started to do the same for declarations. The model is very much
aligned to the model in Language.Haskell.Syntax. The implementation for
the native parser feeds the model, as far as it goes at the moment, and
the outline view displays it.
There is also a prototypical refactoring support using the Eclipse ltk.
For the next versions, I will investigate how to integrate HaRe (which
is of course the only way to do non-trivial refactorings).
Changes in 0.7.0:
Eclipse 3.1M6 compatibility, native parser integration, prototypical
Note: Eclipse 3.1 M6 is now required! If you need an Eclipse 3.0.x or
3.1 M1-M5a for some reason, it is probably better to keep using the
former version, 0.6. And you need the Eclipse SDK (or at least the
Platform Runtime plus the JDT Runtime). The Platform runtime is not
sufficient, because the language toolkit, which I use for the
Refactoring support, is still part of JDT. (I think this will change
soon, so this in only temporarily.)
Note: Although the code is still platform-independent, there are now
different binaries for different platforms. I have only built a version
for win32. It will run on other platforms, but the native parser support
is missing there.
- There is now an integration for a native parser, accessed via JNI.
(The parser is from the language-src package.) This means there are now
platform-specific fragments with the native libraries.
- Started to extend the language model interfaces. The model is quite
aligned with that in Language.Haskell.Syntax. It is filled using the
- Fix: error in property tester killed run context menu
- Started to fill the Outline View with information from the language
- A first prototypical refactoring: Rename Module (changes the module
name in the module declaration and in import statements in other files,
and renames the source file of the module).
Please keep in mind that this is still experimental and that not every
possible problem case is checked for (or even known to me ;-).
Get latest updates about Open Source Projects, Conferences and News.