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

Re: ---



    Date: 27 Jan 87 13:05 PST
    From: Danny Bobrow <Bobrow.pa@Xerox.COM>

	  A generic-function can    have only one method-combination
	  type -- parametrized or not.

	Well that's what is in the standard. I consider this assumption
	being  a simplification of a more general model. I understand that
	we don't want to put the general model in the standard (Size,
	complexity.....) but we can't lock the standard in a mode where
	only the simplistic model can be supported without
	incompatibilities.

    To get other kinds of extensions, one uses the meta-object protocol,
    which in this case consists of defining your own method on
    compute-effective-method.  Since this is called by the system when
    generic function is called with a set of arguments, the only thing it
    can depend on is information from the generic function (and of course
    the argument types).  The issue is whether that information is extracted
    by the system and made an argument of the method, or extracted in the
    method.  I have suggested that extracting it in the method is the
    general way to do it.

That is not really what you have suggested.  You suggested extracting it in
the define-method-combination.  That's entirely different from extracting
it in a method that is defined by someone using the meta-object protocol.
Your suggestion would mean that define-method-combination forms would not
be portable between systems that have only one method combination type per
generic-function and systems that are more general.  What I think Patrick
is suggesting is that the extension to allow more general selection of a
method-combination type should be orthogonal to the method-combination
types themselves.