Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages

  
 
  

home | help
pyacc(1)		    Pascal parser generator		      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 description	of the
	      generated	parser,	written	to yacc-file with new extension	.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 simply specify the grammar
       for your	target language, augmented with	the Turbo Pascal  code	neces-
       sary  to	 process the syntactic constructs, and TP Yacc translates your
       grammar into the	Turbo Pascal code for a	corresponding  parser  subrou-
       tine named yyparse.

       TP  Yacc	parses the source grammar contained in yacc-file (with default
       suffix .y) and writes the constructed parser subroutine to  the	speci-
       fied output-file	(with default suffix .pas); if no output file is spec-
       ified, 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 success or failure of
       the parser (possible return values: 0 = success,	1 = unrecoverable syn-
       tax error or parse stack	overflow).

       Similar to TP Lex, the code template for	the  yyparse  routine  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	infor-
       mation.

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-on-
       line.de>)

SEE ALSO
       ppc386(1) plex(1)

Free Pascal			  19 Jan 2000			      pyacc(1)

Want to link to this manual page? Use this URL:
<https://man.freebsd.org/cgi/man.cgi?query=pyacc&sektion=1&manpath=FreeBSD+Ports+14.3.quarterly>

home | help