@author Richard Carlsson @copyright 1997-2004 Richard Carlsson @version {@vsn} @title Erlang Syntax Tools @doc This package contains modules for handling abstract Erlang syntax trees, in a way that is compatible with the "parse trees" of the standard library module `erl_parse', together with utilities for reading source files in unusual ways and pretty-printing syntax trees. Also included is an amazing module merger and renamer called Igor, as well as an automatic code-cleaner.

The abstract layer (defined in {@link erl_syntax}) is nicely structured and the node types are context-independent. The layer makes it possible to transparently attach source-code comments and user annotations to nodes of the tree. Using the abstract layer makes applications less sensitive to changes in the {@link //stdlib/erl_parse} data structures, only requiring the {@link erl_syntax} module to be up-to-date.

The pretty printer {@link erl_prettypr} is implemented on top of the library module {@link prettypr}: this is a powerful and flexible generic pretty printing library, which is also distributed separately.

For a short demonstration of parsing and pretty-printing, simply compile the included module demo.erl, and execute demo:run() from the Erlang shell. It will compile the remaining modules and give you further instructions.

Also try the {@link erl_tidy} module, as follows:

    erl_tidy:dir("any-erlang-source-dir", [test, old_guard_tests]).
("test" assures that no files are modified).

News in 1.4:

News in 1.3:

News in 1.2:

News in 1.1: