Related articles |
---|
A yacc debugger pg@bsg.com (1992-05-14) |
Newsgroups: | comp.compilers |
From: | pg@bsg.com (Peter Garst) |
Keywords: | yacc, debug |
Organization: | Compilers Central |
Date: | Thu, 14 May 1992 05:36:31 GMT |
I'm glad Johan Hogberg asked about yacc debuggers, because we provide one.
ydb is both a 100% backward compatible upgrade to yacc, and a development
environment for yacc grammars and parsers. About 75% of the system is
devoted entirely to productivity tools - to grammar and parser analysis
and debugging - with the rest containing the yacc upgrade.
The system includes two main tools: a translate time debugger and a run
time debugger. The translate time tool is both a yacc replacement and an
interactive system for finding and correcting problems with your grammar.
Some of its debugging capabilities include:
- It can show you examples of conflicts - show you how the parse would
proceed for a typical input stream if the parser chose one branch or the
other of the conflict.
- It can generate a new precedence system which resolves conflicts
as you direct, and can write it into your grammar file.
- It provides a lot of support by displaying initial and follow sets,
strings derived from rules, and other useful information.
The run time debugger handles parsers after they have been compiled into a
program. It allows you to do things like:
- Trace the stack, rule reductions, input symbols and other items of
interest.
- Set breakpoints for particular rules, input symbols or other
interesting points.
As a yacc upgrade, ydb is 100% backward compatible, but allows for things
like multiple parsers in a program, incremental parsing, multiple entry
points and lookahead 2 grammars.
Let me know if you'd like more information.
Peter Garst pg@bsg.com
Bloomsbury Software Group
PO Box 390018
Mountain View, CA 94039
USA
(415) 964-3486
--
Return to the
comp.compilers page.
Search the
comp.compilers archives again.