prototype

using yacc && lex