Emacs major mode, IDEs, tools?
Matthias Lang
matthias@REDACTED
Wed Sep 4 18:32:13 CEST 2002
Marc Ernst Eddy van Woerkom writes:
> I started work on an already existing large Erlang
> project and wonder what tools are there around that
> might help me to grasp the existing code.
> Is there an Emacs mode, syntax highlighting would
> be a help already?
> Is there any sophisticated graphical IDE, perhaps
> an Eclipse extension that is worth trying?
>From http://www.erlang.org/faq/x617.html#AEN654:
7.7. Is there an Erlang IDE?
The "official" development environment for Erlang is Emacs, and
there's a special emacs mode for Erlang. This can be found in
lib/emacs/erlang.el under the source tree.
VI fans may want to try the colouring mode for nedit or the mode
for VIM.
There is a defunct X IDE for unix systems called "xerl". It isn't
worth using.
> The OOP world uses graphical modelers/code generators/
> code reengeering tools like Together, ArgoUML,
> Fujaba.. has anything similiar developed in the
> world of Erlang?
> If not why? Does it make less sense or has simply
> noone done the work so far?
7.3. Is there a diagram tool for Erlang?
Not really, most people use general-purpose diagram tools like
xfig. Some people see SDL as the natural way of expressing telecomms
problems in diagrams, while Maurice Castro presented some interesting
work on an alternative notation at the Erlang User Conference 1999.
The first thing many people say is "what about Rose". An Ericsson
project took a look at using Rose for Erlang projects, and concluded
that it wasn't worth using for a whole host of reasons (you can read
Ulf Wiger's post about an investigation into using Rose as much more
than just a diagram tool in the mailing list archive.
The essential reason for Rose and such not looking promising for use
with Erlang is that the way you model a problem in Erlang is rather
different to the way you decompose a problem with OO. While you're
worrying about processes, gen_servers, asynchronous messages and
supervision trees the tool wants to help you with singletons,
exceptions, threads and templates.
For what it's worth, I generally don't use IDEs or debuggers (well,
ok, I occasionally fire up GDB to get a stack backtrace from a core
file), but the one time I tend to think "gee, it'd be nice to have a
graphical tool" is when trying to reverse engineer someone else's
code.
Printing out the whole lot and spreading it out on the floor isn't
such a bad approach either. You can use the recently-posted a2ps
filter to get the keywords highlit ;-)
Matt
More information about the erlang-questions
mailing list