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

Re: Various of Danny's Comments



    I think this is pretty lousy. Having special hidden arguments
    is bad in the same way that non-local references to variables are.
    What does ``ONLY for parsing of extra parameters'' mean? Are we
    really going to put the meta-object function
    COMPUTE-EFFECTIVE-METHOD into CONCEPTS and FUNCTIONS?

All that has to be said in the concepts or functions chapter is that
"generic-function" is a well-known name.  Within the body of
define-method-combination, extra parameters in the def-generic-option
:method-combination option are bound to the variables provided in the
lambda-list in define-method-combination.

    ``I vote for (:accessor-prefix) as the right way to say use the
    slot-names.''

    To quote a famous computer scientist, ``ugh, bletch.''

Vell, you got xomething better.  We have two cases for names:

1) Create symbols for each of the methods (accessors) specified.  Make
these symbols by interning the concatenation of prefix with the
slot-name.  Intern the symbols in the package of the specified prefix.

2) Use the names of the slots for the accessors.

For the first we use (:accessor-prefix <symbol>)

For the second which special case do you like:

a) (:accessor-prefix)

b) (:accessor-prefix nil)

c) (:accessor-prefix ||)

Of these three ugly choices, I prefer the first.  The second and third
have symbols that are interned in some package, and hence violate the
interning rule.

b) (:accessor-prefix nil)

c) (:accessor-prefix ||)

Of these three ugly choices, I prefer the first.  The second and third
have symbols that are interned in some package, and hence violate the
rule.
   


  danny