Akim Demaille <[EMAIL PROTECTED]> writes: > - It does introduce some code duplication.
Yes, I think that's my biggest worry about this sort of thing. If the refactoring results in a real win that users can see (support for Java, say?), then it might be worth this hassle; otherwise, I'm not sure it's worth the bother. > - The memory management is much worse This doesn't worry me much, for the reasons you mentioned. The memory is not a big deal compared to everything else Bison does. > GLR is definitely nice when you have to face a dirty grammar. But we > are in the position of defining this grammar, and it would probably > not be sensible not to keep it LALR. I agree. I don't see the need to move to GLR here. One other comment: any moves along this line should wait until after 2.1 is out. I have some other post-2.1 changes in the pipeline. The biggest post-2.1 issue to my mind is how to get rid of M4. M4 is an enormous performance hog when running Bison on big grammars, and its confusing syntax is also a barrier to skeleton implementers and maintainers. M4 sounded like a nice idea at first, but in retrospect perhaps we should have left well enough alone. People have submitted replacements (one based on Python, another on Scheme) but I'm not sure they're enough of an improvement to be worth the hassle. Perhaps it'd be better to drop the postprocessor phase entirely; it's nice in some respects, but I'm afraid it's turning out to be more trouble than it's worth.
