[Openmcl-devel] MOP errors

Gary Byers gb at clozure.com
Tue Feb 8 00:44:50 UTC 2005



On Mon, 7 Feb 2005, [iso-8859-1] Tiarnán Ó Corráin wrote:

> Hello--
>
> I'm trying to use the BKNR datastore in openmcl
> (http://bknr.net). When I try to load the datastore application, I get
> the following error message:
>
> ,----
> | The class #<STANDARD-CLASS STANDARD-OBJECT> was specified as a
> | super-class of the class #<BKNR.DATASTORE:PERSISTENT-CLASS BKNR.DATASTORE:STORE-OBJECT>;
> | but the meta-classes #<STANDARD-CLASS STANDARD-CLASS> and
> | #<STANDARD-CLASS BKNR.DATASTORE:PERSISTENT-CLASS> are incompatible.
> |    [Condition of type SIMPLE-ERROR]
> `----
>
> Is this a problem with openmcl's incomplete implementation of the MOP,
> or should I look elsewhere?
>

Look to the definition of VALIDATE-SUPERCLASS in

<http://www.alu.org/mop/dictionary.html>

The rationale for requiring that class implementors define
VALIDATE-SUPERCLASS methods (and for the implementation-provide primary
method being somewhat conservative) is described in the "Notes" section
of that dictionary entry.

This is a somewhat subtle and confusing issue.

Some implementations seem to have made a conscious decision to be
more lenient about this than the spec suggests.  I don't believe that
this reduces overall confusion.





More information about the Openmcl-devel mailing list