August 28, 1977

This directory contains source for a version of yacc needed by the Pascal
parser.  The differences between this yacc and a stadard version 6 yacc
are indicated in a comment in y1.c.

Note that the standard yacc parser will not work on the tables produced
by "eyacc" and also that these changes are really useful only with
a fairly large set of error recovery routines which are part of both
"pi" and "pxp".  The routines are language independent, but the method
will only work on languages which have some redundancy in them... it is
probably ill suited for C, but would work fine in ALGOL-60, ALGOL-W,
EUCLID, LIS, SP/K, PL/1, ALPHARD, CLU, ...

I am working on a short document describing the internals of the error
recovery technique used in "pi"... It is a simple modification of the
Graham/Rhodes technique described in a recent article in the CACM.


				Bill Joy
				Computer Science Division
				EECS Department
				University of California, Berkeley
				Berkeley, California  94704

				Office:	(415) 642-4948
				Home:	(415) 524-4510
