From: Dr. Edmund Weitz
Subject: CLHS - (redefining) setf expanders and DEFINE-SETF-METHOD
Date:
Message-ID: <m3y9hz4j58.fsf@bird.agharta.de>
Section 11.1.2.1.2 of the HyperSpec says that a conforming program
should not define "a setf expander [...] (via defsetf or
define-setf-method)" for an external symbol of the COMMON-LISP
package. It seems clear to me that this must also apply to
DEFINE-SETF-EXPANDER but it isn't mentioned there. Is there any
particular reason for this or is it just an oversight?
Also, DEFINE-SETF-METHOD is mentioned here but seemingly nowhere else
in the HyperSpec except for some X3J13 issues. (I remember seeing it
in Paul Graham's "On Lisp", though.) Has DEFINE-SETF-METHOD been
removed from the standard rather late and thus managed to creep into
11.1.2.1.2 and Graham's book?
Thanks,
Edi.
--
Dr. Edmund Weitz
Hamburg
Germany
The Common Lisp Cookbook
<http://agharta.de/cookbook/>
···@agharta.de (Dr. Edmund Weitz) writes:
> Section 11.1.2.1.2 of the HyperSpec says that a conforming program
> should not define "a setf expander [...] (via defsetf or
> define-setf-method)" for an external symbol of the COMMON-LISP
> package. It seems clear to me that this must also apply to
> DEFINE-SETF-EXPANDER but it isn't mentioned there. Is there any
> particular reason for this or is it just an oversight?
DEFINE-SETF-METHOD _is_ DEFINE-SETF-EXPANDER. I guess this was an
overlooked reference. We renamed it when we introduced methods a la
DEFMETHOD because it was possible to have (SETF FOO) methods, and these
had nothing to do with DEFINE-SETF-METHOD. This is just a stray reference
to the old name.
> Also, DEFINE-SETF-METHOD is mentioned here but seemingly nowhere else
> in the HyperSpec except for some X3J13 issues. (I remember seeing it
> in Paul Graham's "On Lisp", though.) Has DEFINE-SETF-METHOD been
> removed from the standard rather late and thus managed to creep into
> 11.1.2.1.2 and Graham's book?
Renamed.
From: Dr. Edmund Weitz
Subject: Re: CLHS - (redefining) setf expanders and DEFINE-SETF-METHOD
Date:
Message-ID: <m3k7tjzdjp.fsf@bird.agharta.de>
Kent M Pitman <······@world.std.com> writes:
> DEFINE-SETF-METHOD _is_ DEFINE-SETF-EXPANDER. I guess this was an
> overlooked reference. We renamed it when we introduced methods a la
> DEFMETHOD because it was possible to have (SETF FOO) methods, and
> these had nothing to do with DEFINE-SETF-METHOD. This is just a
> stray reference to the old name.
Thanks, that clarifies it.
Edi.
--
Dr. Edmund Weitz
Hamburg
Germany
The Common Lisp Cookbook
<http://agharta.de/cookbook/>