]> git.saurik.com Git - bison.git/blame - REFERENCES
* data/bison.c++: Copy the prologue of bison.simple to fetch
[bison.git] / REFERENCES
CommitLineData
07f68b11
RS
1From phr Tue Jul 8 10:36:19 1986
2Date: Tue, 8 Jul 86 00:52:24 EDT
3From: phr (Paul Rubin)
4To: riferguson%watmath.waterloo.edu@CSNET-RELAY.ARPA, tower
5Subject: Re: Bison documentation?
6
7The main difference between Bison and Yacc that I know of is that
8Bison supports the @N construction, which gives you access to
9the starting and ending line number and character number associated
10with any of the symbols in the current rule.
11
12Also, Bison supports the command `%expect N' which says not to mention
13the conflicts if there are N shift/reduce conflicts and no reduce/reduce
14conflicts.
15
16The differences in the algorithms stem mainly from the horrible
17kludges that Johnson had to perpetrate to make Yacc fit in a PDP-11.
18
19Also, Bison uses a faster but less space-efficient encoding for the
20parse tables (see Corbett's PhD thesis from Berkeley, "Static
21Semantics in Compiler Error Recovery", June 1985, Report No. UCB/CSD
2285/251), and more modern technique for generating the lookahead sets.
23(See "Efficient Construction of LALR(1) Lookahead Sets" by F. DeRemer
24and A. Pennello, in ACM TOPLS Vol 4 No 4, October 1982. Their
25technique is the standard one now.)
26
27 paul rubin
28 free software foundation
29
30