From e533ea29e80a641f247022f321a3bf1a1456c56e Mon Sep 17 00:00:00 2001 From: Richard Carlsson Date: Tue, 23 Dec 2014 14:23:35 +0100 Subject: Include Merl in Syntax Tools --- lib/syntax_tools/doc/overview.edoc | 83 +++++++++--------------------------- lib/syntax_tools/doc/src/Makefile | 2 + lib/syntax_tools/doc/src/ref_man.xml | 13 +++--- 3 files changed, 28 insertions(+), 70 deletions(-) (limited to 'lib/syntax_tools/doc') diff --git a/lib/syntax_tools/doc/overview.edoc b/lib/syntax_tools/doc/overview.edoc index df02ad0b3a..3111633a99 100644 --- a/lib/syntax_tools/doc/overview.edoc +++ b/lib/syntax_tools/doc/overview.edoc @@ -2,79 +2,34 @@ Syntax Tools overview page - @author Richard Carlsson -@copyright 1997-2004 Richard Carlsson +@copyright 1997-2014 Richard Carlsson @version {@version} -@title Erlang Syntax Tools +@title Erlang Syntax and Metaprogramming 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. +@doc This package contains modules for handling abstract syntax trees (ASTs) +in Erlang, in a way that is compatible with the "abstract format" parse +trees of the stdlib module `erl_parse', together with utilities for reading +source files, {@link erl_prettypr. pretty-printing syntax trees}, {@link +igor. merging and renaming modules}, {@link erl_tidy. cleaning up obsolete +constructs}, and doing {@link merl. metaprogramming} in Erlang. -

The abstract layer (defined in {@link erl_syntax}) is nicely +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.

+data structures, only requiring the `erl_syntax' module to be up-to-date. -

The pretty printer {@link erl_prettypr} is implemented on top of the +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: -

-

+pretty printing library, which is also distributed separately. -

News in 1.2: -

-

+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. -

News in 1.1: -

-

+Also try the {@link erl_tidy} module, as follows: +```erl_tidy:dir("any-erlang-source-dir", [test, old_guard_tests]).''' +(the `test' option assures that no files are modified). diff --git a/lib/syntax_tools/doc/src/Makefile b/lib/syntax_tools/doc/src/Makefile index 2502bf877a..b7c599a9b9 100644 --- a/lib/syntax_tools/doc/src/Makefile +++ b/lib/syntax_tools/doc/src/Makefile @@ -50,6 +50,8 @@ XML_REF3_FILES = \ erl_syntax_lib.xml \ erl_tidy.xml \ igor.xml \ + merl.xml \ + merl_transform.xml \ prettypr.xml XML_PART_FILES = part.xml part_notes.xml diff --git a/lib/syntax_tools/doc/src/ref_man.xml b/lib/syntax_tools/doc/src/ref_man.xml index 598f656011..2b114c8528 100644 --- a/lib/syntax_tools/doc/src/ref_man.xml +++ b/lib/syntax_tools/doc/src/ref_man.xml @@ -29,12 +29,11 @@

Syntax_Tools contains modules for handling abstract - Erlang syntax trees, in a way that is compatible with the "parse - trees" of the STDLIB 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.

+ Erlang syntax trees, in a way that is compatible with the "external + format" parse trees of the STDLIB module erl_parse, together + with utilities for reading source files, pretty-printing syntax trees, + merging and renaming modules, cleaning up obsolete constructs, and + doing metaprogramming in Erlang.

@@ -44,6 +43,8 @@ + + -- cgit v1.2.3