trait?

Das Prädikat trait? überprüft, ob sein Argument ein Merkmal ist.

> (trait? (deftrait a-trait ()))
t

> (trait? nil)
nil

> (trait? (quote a))
nil


Das Prädikat ist über die Funktion type-of und einen Vergleich definiert:

(setq class?
  (lambda (x)
    (eq?
      (type-of x)
      (quote trait))))