Plaster

common-lisp
(defclass my-class () ()) (defclass my-subclass (my-class) ()) (defmethod name ((object my-class)) "FOO") (defmethod name ((object my-subclass)) "BAR") (defgeneric names (object) (:method-combination list) (:method list (object) (name object))) ;;; Would like to get: ;;; (names (make-instance 'my-subclass)) => ("BAR" "FOO")