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

FreeBSD Manual Pages

  
 
  

home | help
plex(1)		       Pascal lexical analyzer generator	       plex(1)

NAME
       plex - The Pascal Lex lexical analyzer generator.

USAGE
       lex [options] lex-file[.l] [output-file[.pas]]

OPTIONS
       -v     Verbose:	plex generates a readable description of the generated
	      lexical analyzer,	written	to lex-file with new extension .lst

       -o     Optimize:	plex optimizes DFA tables to produce a minimal DFA.

DESCRIPTION
       plex is a program generator that	is used	to generate the	 Turbo	Pascal
       source code for a lexical analyzer subroutine from the specification of
       an input	language by a regular expression grammar.

       plex parses the source grammar contained	in lex-file (with default suf-
       fix  .l)	 and writes the	constructed lexical analyzer subroutine	to the
       specified output-file (with default suffix .pas); if no output file  is
       specified,  output goes to lex-file with	new suffix .pas. If any	errors
       are found during	compilation, error messages are	written	 to  the  list
       file (lex-file with new suffix .lst).

       The  generated  output file contains a lexical analyzer routine,	yylex,
       implemented as:

		function yylex : Integer;

       This routine has	to be called by	your main program to execute the lexi-
       cal analyzer. The return	value of the yylex routine usually denotes the
       number of a token recognized by the lexical analyzer  (see  the	return
       routine	in the LexLib unit). At	end-of-file the	yylex routine normally
       returns 0.

       The code	template for the yylex routine may be found in	the  yylex.cod
       file. This file is needed by TP Lex when	it constructs the output file.
       It  must	be present either in the current directory or in the directory
       from which TP Lex was executed (TP Lex searches	these  directories  in
       the  indicated order). (NB: For the Linux/Free Pascal version, the code
       template	is searched in some directory defined at compile-time  instead
       of the execution	path, usually /usr/lib/fpc/lexyacc.)

       The TP Lex library (LexLib) unit	is required by programs	using Lex-gen-
       erated lexical analyzers; you will therefore have to put	an appropriate
       uses  clause  into  your	program	or unit	that contains the lexical ana-
       lyzer routine. The LexLib unit also  provides  various  useful  utility
       routines; see the file lexlib.pas for further information.

MORE INFORMATION
       For  more  information,	see the	documentation that comes with plex and
       yacc.

AUTHOR
       Albert Graeff  (<ag@muwiinfa.geschichte.uni-mainz.de>,  <Dr.Graef@t-on-
       line.de>)

SEE ALSO
       ppc386(1) pyacc(1)

Free Pascal			  10 Jan 2000			       plex(1)

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

home | help