summaryrefslogtreecommitdiff
path: root/static/v10/man6/yacc.6
diff options
context:
space:
mode:
Diffstat (limited to 'static/v10/man6/yacc.6')
-rw-r--r--static/v10/man6/yacc.643
1 files changed, 43 insertions, 0 deletions
diff --git a/static/v10/man6/yacc.6 b/static/v10/man6/yacc.6
new file mode 100644
index 00000000..2abc64a6
--- /dev/null
+++ b/static/v10/man6/yacc.6
@@ -0,0 +1,43 @@
+.pa 1
+.he 'YACC (VI)'1/20/73'YACC (VI)'
+.ti 0
+NAME yacc -- yet another compiler compiler
+.sp
+.ti 0
+SYNOPSIS _____________/crp/scj/yacc [ <grammar ]
+.sp
+.ti 0
+DESCRIPTION Yacc converts a context-free grammar into a set of
+tables for a simple automaton which executes an LR(1) parsing
+algorithm.
+The tables are provided in readable form on the standard output
+and in b-compiler format on file actn.b; the program
+/crp/scj/bpar.b will parse strings using the actn.b file.
+.sp
+If your grammar is too big for yacc, you may
+try /crp/scj/bigyacc,
+some of whose size limits are
+larger, and others smaller.
+.sp
+.ti 0
+FILES actn.b output tables
+.br
+actn.tmp temporary storage
+.br
+Note that these files are created in the invoker's
+directory.
+The file actn.tmp is only created by /crp/scj/bigyacc
+(see above).
+.sp
+.ti 0
+SEE ALSO Yacc manual, by scj (available from ek);
+"LR Parsing", by A. V. Aho and S. C. Johnson, to be published.
+.sp
+.ti 0
+DIAGNOSTICS There are various diagnostics, but only
+one can be obtained in each run.
+.sp
+.ti 0
+BUGS The maximum number of terminal and non-terminal symbols
+is 50 each, and this is not checked. There are
+undoubtedly other bugs too.