[refactor] grammar lex & syn