pyacc(1)
NAME
pyacc - Pascal Yacc compiler compiler.
USAGE
yacc [options] yacc-file[.y] [output-file[.pas]]
SH OPTIONS
- -v Verbose: Pascal Yacc generates a readable descrip
- tion of the generated parser, written to yacc-file with new ex
- tension .lst.
- -d Debug: TP Yacc generates a parser with debugging
- output.
DESCRIPTION
- TP Yacc is a program that lets you prepare parsers from
- the description of input languages by BNF-like grammars. You sim
- ply specify the grammar for your target language, augmented with
- the Turbo Pascal code necessary to process the syntactic con
- structs, and TP Yacc translates your grammar into the Turbo Pas
- cal code for a corresponding parser subroutine named yyparse.
- TP Yacc parses the source grammar contained in yacc-file
- (with default suffix .y) and writes the constructed parser sub
- routine to the specified output-file (with default suffix .pas);
- if no output file is specified, output goes to yacc-file with new
- suffix .pas. If any errors are found during compilation, error
- messages are written to the list file (yacc-file with new suffix
- .lst).
- The generated parser routine, yyparse, is declared as:
function yyparse : Integer;- This routine may be called by your main program to execute
- the parser. The return value of the yyparse routine denotes suc
- cess or failure of the parser (possible return values: 0 = suc
- cess, 1 = unrecoverable syntax error or parse stack overflow).
- Similar to TP Lex, the code template for the yyparse rou
- tine may be found in the yyparse.cod file. The rules for locating
- this file are analogous to those of TP Lex (see Section `TP
- Lex').
- The TP Yacc library (YaccLib) unit is required by programs
- using Yacc- generated parsers; you will therefore have to put an
- appropriate uses clause into your program or unit that contains
- the parser routine. The YaccLib unit also provides some routines
- which may be used to control the actions of the parser. See the
- file yacclib.pas for further information.
More information
- For more information, see the documentation that comes
- with TP lex and yacc.
AUTHOR
- Albert Graeff (<ag@muwiinfa.geschichte.uni-mainz.de>,
- <Dr.Graef@t-online.de>)