Greets,
Our JSON parser is powered by the Lemon parser generator[1], with the grammar
file in core/Lucy/Util/Json/JsonParser.y. As formal grammars are the topic of
this week's book club, I thought it might be a good time to hack on it a bit.
Right now, the grammar is slightly more complex than it needs to be. This
block is unnecessary:
/* Structural characters. */
begin_array ::= LEFT_SQUARE_BRACKET.
end_array ::= RIGHT_SQUARE_BRACKET.
begin_object ::= LEFT_CURLY_BRACKET.
end_object ::= RIGHT_CURLY_BRACKET.
name_separator ::= COLON.
value_separator ::= COMMA.
All we have to do is replace all instances in the file of the non-terminals on
the left with the corresponding terminals on the right and that block can be
deleted.
Have we got a volunteer willing to take this task on?
Marvin Humphrey
[1] http://www.hwaci.com/sw/lemon/lemon.html