REFERENC 1.2 KB

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