Roman Marynchak <email address hidden> writes:
> The workaround idea is to check only for T and NIL, and allow other > constants to be used as slots names.
I don't like this idea at all. What's special about T and NIL?
> The question now is: should we prefer a failure within DEFCLASS or a > failure within WITH-SLOTS, when a slot name is also a constant's name?
Within DEFCLASS: prefer reporting undefined code early if possible.
Why is the right answer not to replace (constantp name env) with (eq (info :variable :kind name) :constant) ?
Christophe
Roman Marynchak <email address hidden> writes:
> The workaround idea is to check only for T and NIL, and allow other
> constants to be used as slots names.
I don't like this idea at all. What's special about T and NIL?
> The question now is: should we prefer a failure within DEFCLASS or a
> failure within WITH-SLOTS, when a slot name is also a constant's name?
Within DEFCLASS: prefer reporting undefined code early if possible.
Why is the right answer not to replace
(constantp name env)
with
(eq (info :variable :kind name) :constant)
?
Christophe