[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

scope of call-next-method



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)))
    .
-------