Make AST visitor simpler