[mercury-users] Off-topic: IDE/compiler trade-off

Jonathan Morgan jonmmorgan at gmail.com
Tue Jan 9 22:10:20 AEDT 2007

On 1/8/07, Ondrej Bojar <obo at cuni.cz> wrote:
> I'm not a fan of IDEs, but I understand some people use it and that
> there are some advantages IDE can bring, starting with instant syntax
> checking and syntax-informed completion. (Syntax highliting is quite
> easy to achieve in most configurable editors.) I have never used any of
> the Java IDEs but I heard that some perform instant type checking, too.
> This leads to a design question:
> Where should the intelligent assistance to code writing be integrated?
> In the compiler, or the editor?

In the compiler.

> It's not wise to put more power in the editor than in the compiler (what
> if someone used a different editor, what if the file got randomly
> screwed up during file transfers).

Or, more to the point, what if the language changed (as Mercury does
frequently) and the editor was useless by the next release?

> In my opinion, what IDE developers should be after, is a tight interface
> between the compiler and the editor, so that all the intelligence will
> remain in compiler only, but we saved some cycles of constant rerunning
> of the compiler black box. (The main reason for all IDEs driving me nuts
> is the wasteful use of computational resources and typical slowdown of
> all text editing operations.)
> Are there any standards on compiler-editor interaction interface?

GHC (Haskell) changed from a compiler to a library in order to support
Visual Haskell (this then interfaced with Visual Studio through
Haskell -> COM bindings).

The Mercury way seems to be to add extra options to the compiler,
rather than making it a library to be used by other programs (for
example, recently generation of XML documentation of some sort was
added, as another compiler option).  This would avoid the need for
some kind of a cross-language bridge, but might make the interface
with the compiler more granular (and thus less useful).

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