94 lines
2.1 KiB
Plaintext
94 lines
2.1 KiB
Plaintext
|
Parse::RecDescent version 1.967015
|
||
|
|
||
|
NAME
|
||
|
|
||
|
Parse::RecDescent - generate recursive-descent parsers
|
||
|
|
||
|
|
||
|
DESCRIPTION
|
||
|
|
||
|
RecDescent incrementally generates top-down recursive-descent text
|
||
|
parsers from simple yacc-like grammar specifications. It provides:
|
||
|
|
||
|
* Regular expressions or literal strings as terminals (tokens),
|
||
|
|
||
|
* Multiple (non-contiguous) productions for any rule,
|
||
|
|
||
|
* Repeated, optional and alternate subrules within productions,
|
||
|
|
||
|
* Late-bound (run-time dispatched) subrules
|
||
|
|
||
|
* Full access to Perl within actions specified as part of the grammar,
|
||
|
|
||
|
* Simple automated error reporting during parser generation and parsing,
|
||
|
|
||
|
* The ability to commit to, uncommit to, or reject particular
|
||
|
productions during a parse,
|
||
|
|
||
|
* Incremental extension of the parsing grammar (even during a parse),
|
||
|
|
||
|
* Precompilation of parser objects,
|
||
|
|
||
|
* User-definable reduce-reduce conflict resolution via
|
||
|
"scoring" of matching productions.
|
||
|
|
||
|
|
||
|
LIMITATIONS
|
||
|
|
||
|
* There's no support for parsing directly from an input stream.
|
||
|
|
||
|
* The generator doesn't handle left-recursion.
|
||
|
|
||
|
|
||
|
PREREQUISITES
|
||
|
|
||
|
Parse::RecDescent requires the Text::Balanced module, which is available
|
||
|
from the CPAN.
|
||
|
|
||
|
|
||
|
INSTALLATION
|
||
|
|
||
|
It's all pure Perl, so just put the .pm files in their appropriate
|
||
|
local Perl subdirectories.
|
||
|
|
||
|
|
||
|
CHANGES AND FUTURE DEVELOPMENT
|
||
|
|
||
|
This readme refers to versions 1.XXXXXX.
|
||
|
For details of changes, refer to the file Changes.
|
||
|
|
||
|
Version 2.00 will provide a cleaner interface and better
|
||
|
parsing performance.
|
||
|
|
||
|
|
||
|
AUTHOR
|
||
|
|
||
|
Damian Conway (damian@conway.org)
|
||
|
Jeremy T. Braun (JTBRAUN@CPAN.org) [current maintainer]
|
||
|
|
||
|
|
||
|
INSTALLATION
|
||
|
|
||
|
To install this module, run the following commands:
|
||
|
|
||
|
perl Makefile.PL
|
||
|
make
|
||
|
make test
|
||
|
make install
|
||
|
|
||
|
|
||
|
Alternatively, to install with Module::Build, you can use the following commands:
|
||
|
|
||
|
perl Makefile.PL
|
||
|
make
|
||
|
make test
|
||
|
make install
|
||
|
|
||
|
|
||
|
COPYRIGHT AND LICENCE
|
||
|
|
||
|
Copyright (C) 1997-2007, Damian Conway
|
||
|
|
||
|
This library is free software; you can redistribute it and/or modify
|
||
|
it under the same terms as Perl itself.
|