parent = $parent; } public function get(string $key) { if ($this->has($key)) { return $this->data[$key]; } elseif ($this->parent) { return $this->parent->get($key); } throw new MadLispException("symbol $key not defined in env"); } public function set(string $key, $value) { $this->data[$key] = $value; return $value; } }