add eval function into each AST classes