Скажем, у нас есть слот без :initform
(defclass foo ()
((x :reader x :initarg x)))
Как я могу проверить, связан ли слот x экземпляра foo?
Есть это способ сделать это с помощью MOP, который я нахожу очень уродливым. Есть ли более простой способ?
Я лучше прибегну к:
(defclass foo ()
((x :reader x :initarg x :initform nil)))
и просто проверю, равно ли оно нулю или нет — в этом случае x никогда не может быть равным нулю (неоднозначно).