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>)

SEE ALSO

ppc386(1) plex(1)
Free Pascal 19 Jan 2000
Copyright © 2010-2025 Platon Technologies, s.r.o.           Home | Man pages | tLDP | Documents | Utilities | About
Design by styleshout