@override visitProgram(Program node) { node.environment = <String?>{}; currentScope = node; node.forEach(visit); }