style(): only instantiate lex/parse once