(defclass my-class (standard-class) ()) (defmethod initialize-instance :around ((class my-class) &key) (let ((instance (call-next-method))) (format t "I got an instance: ~S~%" instance) instance)) (defmethod c2mop:validate-superclass ((c my-class) (s standard-class)) t) CL-USER> (defclass foo () () (:metaclass my-class)) ; I got an instance: # #