The disadvantage of any success is it wears off quicker than you worked for it. I finished NLT true generator yesterday, and while working today on some tutorial-example I already forgot how good it felt to see it finally in action.
It brings more speed (it is about x2 faster) but it also provides detection of used arguments in parser actions. Thanks to that the generated code is more compact — no dummy proxies. Another feature added in this version is altogether groups (I didn’t know how to name those better). Consider parser rule with set group:
[ TYPE , ASSIGN EXPR ]
This will create two productions — one with “
TYPE”, and the other with “
ASSIGN EXPR” symbols. Altogether group works just like set group with one extra production — all elements in given order:
< TYPE , ASSIGN EXPR >
You will get “
ASSIGN EXPR” and “
TYPE ASSIGN EXPR” productions — I use exactly this form when parsing variable declaration in Skila.
One feature that didn’t make its way to this release was shuffle mode (think of “
public static” / “
static public” expressed as one rule) — it is a nice thing to have, but it can wait a bit more.
And you have it — big change, short news…