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

MOP and Inheritance

If support for radically different kinds of inheritance is to be one of the
MOP goals, and the purpose of the tendency in the current MOP proposal to
empahsize the CPL is for maintaining Common Lisp subtyping
semantics, then it would probably rather be a better idea to fix SUBTYPEP
than to force implementors to think in terms of the CPL. This could be
achieved, for example, by making SUBTYPEP generic, and making it part
of the MOP. Note that this need not affect method dispatch, since TYPEP need 
not use SUBTYPEP, and, in fact, method dispatch need not use TYPEP either. 

Alternatively, the goals of the MOP could be narrowed to just supporting
inheritance consistent with current Common Lisp subtyping, and require
users wanting to do anything really different to roll their own.