Yet another parser generator

Zerksis Umrigar <zdu@cs.binghamton.edu>
7 Aug 1997 15:18:27 -0400

          From comp.compilers

Related articles
Yet another parser generator zdu@cs.binghamton.edu (Zerksis Umrigar) (1997-08-07)
| List of all articles for this month |

From: Zerksis Umrigar <zdu@cs.binghamton.edu>
Newsgroups: comp.compilers
Date: 7 Aug 1997 15:18:27 -0400
Organization: Compilers Central
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
          left-to-right parse.


      * 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
          easier.


      * 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'
          file.


      * Allows multiple-character quoted literal tokens.


      * Allows command-line options to be specified from within the parser
          file.


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


http://opal.cs.binghamton.edu/~zdu/zyacc


The homepage has links to a live demo of the GUI debugger using java
applets.


Zyacc can also be ftp'd from:


ftp://watson2.cs.binghamton.edu/pub/zdu/zyacc-1.03.tar.gz
(about 1.1MB)


which contains full documentation (postscript, html & info), or


ftp://watson2.cs.binghamton.edu/pub/zdu/zyacc-1.03-min-doc.tar.gz
(about 650KB)


which contains only the documentation source.


zerksis umrigar
(zdu@acm.org)
======
--


Post a followup to this message

Return to the comp.compilers page.
Search the comp.compilers archives again.