[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: CLASS-CHANGED and UPDATE-OBSOLETE-INSTANCE



>     One could do the same thing as:

>     (defmethod change-class 
>       ((p1 x-y-point) (class (eql (class-named 'rho-theta-point))))

>       (let
>         ( (p2 (call-next-method)) )

>         (with-slots (p2 rho theta)
>           (setf rho (rho p1))
>           (setf theta (theta p1)))))

> Two problems with what you say:
> 1) After the call-next-method p1 is EQL to p2, and p1 is no longer an x y poi
nt.
> 2)  Even if this worked, it wouldn't work for a subclass of rho-theta point.

Right. It is pretty gross code anyway.