Tengo dos clases identicas, la única diferencia es que una es definida en la forma tradicional (class nombre_clase). Y la otra mediante Struct (nombre_clase = Struct.new()). La duda la tengo en el metodo mutable que presento a continuación
En la forma tradicional puedo ocupar indistintamente @x como self.x para modificar cada una de las componentes del punto original. Sin embargo en la definida mediante Struct, solo puedo hacerlo con self.x para modificar las componentes. ¿Por que?