|ANNOUNCE: yagg 1.20 released email@example.com (David Coppit) (2004-12-11)|
|From:||David Coppit <firstname.lastname@example.org>|
|Date:||11 Dec 2004 12:31:52 -0500|
|Organization:||Concentric Internet Services|
|Posted-Date:||11 Dec 2004 12:31:51 EST|
yagg - generate a C++ string generator from a grammar
Given YACC-like and LEX-like input files, yagg is a Perl program that
generates a C++ program that generates all strings of a user-specified
length. The YACC-like language grammar file provides the grammar
productions for string generation, along with optional action blocks that
can per- form context-sensitive checks in order to limit the generated
strings. The LEX-like terminal generator file provides specifications that
instruct the program how to generate strings for terminals in the grammar.
If the programmer already has a YACC or Bison parser file, he or she
only needs to add "unaction" blocks to allow the recursive generator to
undo the side effects of the action blocks. If the programmer already
has a LEX or FLEX lexer input file, he or she only needs to remove
extraneous code and replace any regular expressions with one of the
terminal generator specifications.
This program is useful if you want to see examples of strings recognized
by a YACC grammar. It can also be used to generate inputs for any program
that uses textual input.
- Initial public release
- You can download yagg from CPAN:
- Until the file propagates to the mirrors, you can use the following URL:
A complete change log is at:
Return to the
Search the comp.compilers archives again.