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. See the file RecDescent.pod for excruciating detail on all of this.
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. See the file RecDescent.pod for excruciating detail on all of this.
To install p5.30-parse-recdescent, run the following command in macOS terminal (Applications->Utilities->Terminal)
sudo port install p5.30-parse-recdescent
To see what files were installed by p5.30-parse-recdescent, run:
port contents p5.30-parse-recdescent
To later upgrade p5.30-parse-recdescent, run:
sudo port selfupdate && sudo port upgrade p5.30-parse-recdescent
Reporting an issue on MacPorts Trac
The MacPorts Project uses a system called Trac to file tickets to report bugs and enhancement requests.
Though anyone may search Trac for tickets, you must have a GitHub account in order to login to Trac to create tickets.