CL-USER> (defclass a () ())
CL-USER> (defclass b (a) ())
CL-USER> (make-instance 'b)
#<STANDARD-CLASS B>
我可以在我的实例b上调用什么谓词函数,如果它是从一个继承而返回T?本着:
CL-USER> (instanceof 'a *)
T
答案 0 :(得分:9)
类名也是类型名称,因此:
(typep * 'a)
请参阅集成类型和类:http://clhs.lisp.se/Body/04_cg.htm
或者你可以这样做:
(defmethod is-an-a-p ((x a))
t)
(defmethod is-an-a-p ((x t))
nil)