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

Re: standard-type-classes

    The draft specification as it stands contains neither
    CLASS-NAME nor anonymous classes.  Can we assume that someone is
    going to get their act together and propose those at some point?

The document should say something like:

Classes are first class objects.  Unnamed classes can exist, created by,
for example, by
(MAKE-INSTANCE class direct-supers ...)

The user interface suports the notion of class-names to allow defclass
definitions to use names.  The function interface to those classes
defined by DEFCLASS consists of:

    (CLASS-NAMED <symbol> &optional (no-error ())

which returns the class currently having the name <symbol> or signals an
error if there is no such class if no-error is NIL.  If no-error is
non-NIL, then CLASS-NAMED returns NIL if there is no such class.

   (CLASS-NAME class &optional (unnamed-class-response 'NO-NAME))

This function returns the name originally provided by defclass if this
class still has that name, the value of unnamed-class-response if the
class has none.  It is a hint in that it is NOT guaranteeed that
   (CLASS-NAMED (CLASS-NAME class)) = class

  The "natural" value of unnamed-class-response is () but this conflicts
with our desire to have a class named NIL.