write the grammer at first, and cook the program manually