Parsing Expression Grammars For Lua with Labeled Failures
$ luarocks install lpeglabel
LPegLabel is a conservative extension of the LPeg library that provides
an implementation of Parsing Expression Grammars (PEGs) with labeled failures.
Labels can be used to signal different kinds of erros and to specify which
alternative in a labeled ordered choice should handle a given label.
Labels can also be combined with the standard patterns of LPeg.