|Yet another parser generator firstname.lastname@example.org (Zerksis Umrigar) (1997-08-07)|
|From:||Zerksis Umrigar <email@example.com>|
|Date:||7 Aug 1997 15:18:27 -0400|
|Keywords:||parse, tools, available|
This is to announce the first public release of Zyacc: a general-purpose
parser generator that converts a grammar description for an LALR(1)
context-free grammar into a C program to parse that grammar. Zyacc is
largely upward compatible with Yacc and Bison.
Zyacc provides the following enhancements:
* Supports inherited attributes which can be uniquely evaluated in a
* Supports semantic tests which allow the outcome of runtime semantic
tests to affect parsing decisions.
* Permits remote interactive debugging of generated parsers either
by using a textual interface or by using a java-based GUI.
The debugger allows the setting of breakpoints on any grammar symbol
and selective display of the current parser state.
* Allows named attribute variables which make maintaining grammars
* Can generate its parser description files in HTML which can then be
viewed using any Web browser.
* Provides a `%look' directive to check (at parser construction time)
whether a reduction requires lookahead.
* Allows multiple start nonterminals and allows a call to the
parsing function to be made for a particular start nonterminal.
* It is possible to avoid having types which are only used in
describing nonterminal semantics written into the generated `.h'
* Allows multiple-character quoted literal tokens.
* Allows command-line options to be specified from within the parser
The distribution comes with a Prolog frontend which illustrates the use of
semantic predicates to handle Prolog's dynamic operators. The zyacc home
page also links to a source-to-source profiling tool which is essentially a
Ansi-C frontend which uses semantic predicates for a clean solution to the
problem of parsing typedef-name's in C.
The zyacc homepage is at
The homepage has links to a live demo of the GUI debugger using java
Zyacc can also be ftp'd from:
which contains full documentation (postscript, html & info), or
which contains only the documentation source.
Return to the
Search the comp.compilers archives again.