We have grammar(s) to parse poker hand histories. They are all more or less working, however there are a few areas where we could use some extra help and we'd like to see the grammar cleaned up as well.
We use junit to ensure that we get expected results from our grammars so your job would entail covering a couple areas, cleaning it up and then ensuring that all our tests pass.
Weaknesses that need to be addressed:
* player names sometimes conflict with actions
* chat mesages span multiple lines, however, traditionally actions should not span
more than one line, except in rare cases
* header info is usually a grab bag of lots of different information and so should contain as many wildcard type of rules as possible rather than the catch-all it is right now
Speed is the name of the game here so whatever parser/lexer rules you create/modify/etc. should NOT slow it down dramatically any more than it already is -- we have various tools to clock our speed on the parsing as is.
If you are wishing to take this job I DO NEED to see some previous grammar work.