"I would mildly object to having [EQUAL] recursively compare components
because that seems to be a violation of the data abstraction
capability
that structures are supposed to provide."
One of the proposed uses for a multi-methods in CommonLoop was to allow
methods that declared themselves as -inside- both structures, and have
the system ensure that it was called in just such a case. It would seem
that EQUAL and others are good candidates for such methods.
"I would like to change the language so that the the type of
structures
(whose DEFSTRUCT doesn't use :TYPE) is disjoint from other types."
I agree on the utility of providing easy mechanisms to suport
disjointness. Are there implementations out there that do not support
opaque types?
----- dgb: