{"record":{"id":"cd1b6e5e9650a8bf","repo":"aosabook/500lines","slug":"name-s-is-not-defined","errorCode":null,"errorMessage":"name '%s' is not defined","messagePattern":"name '(.+?)' is not defined","errorType":"exception","errorClass":"NameError","httpStatus":null,"severity":"error","filePath":"interpreter/code/byterun/pyvm2.py","lineNumber":306,"sourceCode":"        self.frame.push(const)\n\n    def byte_POP_TOP(self):\n        self.frame.pop()\n\n    def byte_DUP_TOP(self):\n        self.frame.push(self.frame.top())\n\n    ## Names\n    def byte_LOAD_NAME(self, name):\n        frame = self.frame\n        if name in frame.local_names:\n            val = frame.local_names[name]\n        elif name in frame.global_names:\n            val = frame.global_names[name]\n        elif name in frame.builtin_names:\n            val = frame.builtin_names[name]\n        else:\n            raise NameError(\"name '%s' is not defined\" % name)\n        self.frame.push(val)\n\n    def byte_STORE_NAME(self, name):\n        self.frame.local_names[name] = self.frame.pop()\n\n    def byte_DELETE_NAME(self, name):\n        del self.frame.local_names[name]\n\n    def byte_LOAD_FAST(self, name):\n        if name in self.frame.local_names:\n            val = self.frame.local_names[name]\n        else:\n            raise UnboundLocalError(\n                \"local variable '%s' referenced before assignment\" % name\n            )\n        self.frame.push(val)\n\n    def byte_STORE_FAST(self, name):","sourceCodeStart":288,"sourceCodeEnd":324,"githubUrl":"https://github.com/aosabook/500lines/blob/fba689d101eb5600f5c8f4d7fd79912498e950e2/interpreter/code/byterun/pyvm2.py#L288-L324","documentation":"Error \"name '%s' is not defined\" thrown in aosabook/500lines.","triggerScenarios":"Thrown at interpreter/code/byterun/pyvm2.py:306 when the library encounters an invalid state.","commonSituations":"See trigger scenarios.","solutions":["Define the name (assignment, def, class, or import) before loading it.","Check for typos in the variable or function name being loaded.","If the name is a builtin, make sure it exists in the running Python version; otherwise define it explicitly."],"exampleFix":"x = 1\nprint(x)  # define x before LOAD_NAME/LOAD_GLOBAL references it","handlingStrategy":null,"validationCode":null,"typeGuard":null,"tryCatchPattern":null,"preventionTips":[],"tags":[],"backgroundTag":null,"analyzedSha":"fba689d101eb5600f5c8f4d7fd79912498e950e2","analyzedAt":"2026-08-13T06:26:32.792Z","schemaVersion":2},"datasetVersion":"2026-08-13T09:17:06.757Z"}