add lexer generator

similar to lex