Hans Aberg wrote:

As for the optimizations mentioned, I suspect they are old; they probably seemed important in older times, when computing time and space was very expensive.

It's true they are getting old, and bison is already pretty fast.
Except in some specific cases, I also doubt anyone needs much
faster.

The LALR(1) algorithm that Bison uses, was developed in this vein; Bison probably ought to also have LR(1) these days, which may expand the parser size several times, but would not matter on todays computers.

About LR(1), I recently found out menhir
<http://pauillac.inria.fr/~fpottier/menhir/menhir.html.en>, which
implements LR(1) using Pager's method: even today, the direct generation
of a full-blown LR(1) parser is too expensive.  Anyway, you would need
to merge as many LR(1) states as possible if you do not want a dramatic
performance drop in GLR parsing ... My feeling is that LALR(1) is a
sensible choice.

--
Regards,

  Sylvain




_______________________________________________
[email protected] http://lists.gnu.org/mailman/listinfo/help-bison

Reply via email to