antlr c++ target mostly works
more functional, now