egg - grammar definition language and parser generator