Projects / yagg


yagg, given YACC-like and LEX-like input files, generates a C++ program that generates all strings of a user-specified length. This program can then be used to generate inputs for testing, or to validate that a grammar accepts the strings that you think it does. The grammar file provides the grammar productions for string generation, along with optional action blocks that can perform 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.

Operating Systems

RSS Recent releases

  •  02 Apr 2007 09:52

Release Notes: This release adds a section to the tutorial on controlling output formatting. An assert failure that would occur in peculiar circumstances has been fixed. The test cases for the pass-by-reference updates in 1.3000 have been updated.

  •  23 Aug 2006 01:46

Release Notes: A program was added to generate random strings. A bug where yagg would be unable to generate a double quote character was fixed. A bug where use equivalence alternation would result in an assertion failing was fixed.

  •  06 Jun 2005 08:58

Release Notes: This release fixes a bug related to generating code for nonpointer rule types and one involving output paths with spaces in them.

  •  10 Dec 2004 09:46

No changes have been submitted for this release.


Project Spotlight

Fast Light File Manager

A small graphical X11 file manager.


Project Spotlight


A full featured file system for Amazon S3 and other online storage services.