[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
scope of call-next-method
- To: David A. Moon <Moon@STONY-BROOK.SCRC.Symbolics.COM>
- Subject: scope of call-next-method
- From: Gregor.pa@Xerox.COM
- Date: Thu, 12 Nov 87 10:55 PST
- Cc: common-lisp-object-system@SAIL.STANFORD.EDU
- In-reply-to: <19871112172228.3.MOON@EUPHRATES.SCRC.Symbolics.COM>
- Line-fold: no
I would still rather have call-next-method only be valid in the body of
the method and let users who want to do defaulting using it do the
defaulting by hand in the obvious way. I believe that the model that
defmethod wrap an flet around their body is a great deal simpler than
the model required to explain the behavior you propose. Just compare:
(defmetod foo ((x class))
(body x))
call-next-method only available in body:
.
#'(lambda (x)
(flet ((call-next-method (&rest r) ..))
(body x)))
.
call-next-method available in body and default value forms:
.
#'(lambda (&rest #:c-n-m-arguments)
(flet ((call-next-method (&rest #:c-n-m-arguments)
(apply ... (or #:c-n-m-arguments #:arguments))))
(apply #'(lambda (x)
(body x))
#:c-n-m-arguments)))
.
-------