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

Re: specializer-direct-xxx generic functions



   From: <Moon@STONY-BROOK.SCRC.Symbolics.COM>
   Line-Fold: No

   Another possibility that could be explored would be for
   generic-flet/-labels/-function to have two kinds of metaobjects: for want of
   a better name I'll call them template-generic-function/template-method, and
   closure-generic-function/closure-method.  A generic-flet form would create
   the template metaobjects once when the form is processed, and would create a
   new set of closure metaobjects each time it is executed.

This seems like a promising way out of this problem.  A way out needs to
be found at some point since specializer-direct-methods is an important
part of the MOP.

I also concur with your comment that generic-flet/labels may not be that
critical.  In general, I don't think we designed those well, although I
am not sure it would be possible to do them well in Common Lisp, it may
be they can only be done well in Scheme.  One symptom of their failing:
we can create lexically scoped generic function definitions, but we
can't create lexically-scoped class definitions.