changed grammar, made the visitors more specific to the AST tree node types