------art_190954_16027503.1166164730670
Content-Type: text/plain; charset=ISO-8859-1; format=flowed
Content-Transfer-Encoding: 7bit
Content-Disposition: inline

This version of the Dhaka gem fixes two bugs in the handling of grammars
that use precedence hints:

* Production precedences were sometimes not being calculated correctly
because of the grammar not being fully loaded at calculation time. The
calculation of these precedences is now postponed until they are actually
needed during parser generation. The precedences are needed only when
resolving conflicts - a rare occurrence - so generation speed isn't really
affected.
* Parsers created with grammars that used the 'nonassoc' precedence hint
could not be compiled to ruby source. This has been fixed.

As a side note, both the above bugs were found when trying to generate a
parser for the Ruby grammar. I haven't tested it extensively for
correctness, but the automaton for this parser has ~850 states and takes ~5
minutes to generate. Amazing how much complexity lurks beneath a language
that 'fits so easily into one's head'.

http://dhaka.rubyforge.org

Mushfeq.

------art_190954_16027503.1166164730670--