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 +++++++++-----------------------------
1 file changed, 19 insertions(+), 64 deletions(-)
(limited to 'lib/syntax_tools/doc/overview.edoc')
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:
-
- - Added support for {@link erl_syntax:cond_expr/1. cond-expressions},
- {@link erl_syntax:try_expr/4. try-expressions} and
- {@link erl_syntax:class_qualifier/2. class-qualifier patterns}.
- - Added support for parameterized modules.
- - {@link igor. Igor} is officially included.
- - Quick-parse functionality added to {@link epp_dodger}.
-
-
-
-News in 1.3:
-
- - Added support for qualified names (as used by "packages").
- - Various internal changes.
-
-
+pretty printing library, which is also distributed separately.
-News in 1.2:
-
- - HTML Documentation (generated with EDoc).
- - A few bug fixes and some minor interface changes (sorry for any
- inconvenience).
-
-
+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:
-
- - Module {@link erl_tidy}: check or tidy either a single module, or a
- whole directory tree recursively. Rewrites and reformats the code
- without losing comments or expanding macros. Safe mode allows
- generating reports without modifying files.
- - Module {@link erl_syntax_lib}: contains support functions for easier
- analysis of the source code structure.
- - Module {@link epp_dodger}: Bypasses the Erlang preprocessor - avoids
- macro expansion, file inclusion, conditional compilation, etc.
- Allows you to find/modify particular definitions/applications of
- macros, and other things previously not possible.
-
-
+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).
--
cgit v1.2.3