diff options
Diffstat (limited to 'tools/bison++/REFERENCES')
-rw-r--r-- | tools/bison++/REFERENCES | 30 |
1 files changed, 30 insertions, 0 deletions
diff --git a/tools/bison++/REFERENCES b/tools/bison++/REFERENCES new file mode 100644 index 000000000..b02eb18c5 --- /dev/null +++ b/tools/bison++/REFERENCES @@ -0,0 +1,30 @@ +From phr Tue Jul 8 10:36:19 1986 +Date: Tue, 8 Jul 86 00:52:24 EDT +From: phr (Paul Rubin) +To: riferguson%watmath.waterloo.edu@CSNET-RELAY.ARPA, tower +Subject: Re: Bison documentation? + +The main difference between Bison and Yacc that I know of is that +Bison supports the @N construction, which gives you access to +the starting and ending line number and character number associated +with any of the symbols in the current rule. + +Also, Bison supports the command `%expect N' which says not to mention +the conflicts if there are N shift/reduce conflicts and no reduce/reduce +conflicts. + +The differences in the algorithms stem mainly from the horrible +kludges that Johnson had to perpetrate to make Yacc fit in a PDP-11. + +Also, Bison uses a faster but less space-efficient encoding for the +parse tables (see Corbett's PhD thesis from Berkeley, "Static +Semantics in Compiler Error Recovery", June 1985, Report No. UCB/CSD +85/251), and more modern technique for generating the lookahead sets. +(See "Efficient Construction of LALR(1) Lookahead Sets" by F. DeRemer +and A. Pennello, in ACM TOPLS Vol 4 No 4, October 1982. Their +technique is the standard one now.) + + paul rubin + free software foundation + + |