我想做类似的事情:
(defrecord Base [])
(defrecord Person [])
(defrecord Animal [])
(derive Person Base)
(derive Animal Base)
(isa? Animal Person)
这可能吗?
更新:
我已经意识到这是不可能的,所以我正在做这样的事情:
(defmulti type class)
(defmethod type Base [_] ::base )
(defmethod type Animal [_] ::animal )
(defmethod type Person [_] ::person )
这有意义还是有更好的方法?