From: Luca Pisati

Subject: Re: strange class behavior

Date: 1997-9-22 13:54

Arthur Flatau wrote:
>
> >>>>> On Sat, 20 Sep 1997 16:23:47 -0500, Marilyn Bunzo <eos.arc.nasa.gov at msb> said:
>
> > Has anyone observed class behavior whereby you can end up with more than > > one class defined of the same name in the same package? We had been > > using some metaclasses which we initially blamed for the problm. I > > eliminated the metaclasses from our system in the hopes of eliminating > > this error. Unfortunately, that didn't work.
> > [... snipped ...] >
> > We are using Allegro 4.3 on SGIs with all the latest patches downloaded > > from the Franz site.
>
> > USER(7): (clos::class-direct-subclasses (find-class 'activity::contingent-activity)) > > (#<STANDARD-CLASS ACTIVITY-SPACE::ND-AIR-MIDAS-DECIDE-ACTIVITY> > > #<STANDARD-CLASS ACTIVITY-SPACE::ND-AIR-MIDAS-DECIDE-ACTIVITY @ #x10864ada> > > #<STANDARD-CLASS MIDAS-INTERNAL:DECIDE-BY-ALGORITHM> > > #<STANDARD-CLASS MIDAS-INTERNAL:DECIDE-BY-ALGORITHM @ #x107c696a> > > #<STANDARD-CLASS ACTIVITY-SPACE:DECIDE-BY-RULE> > > #<STANDARD-CLASS ACTIVITY-SPACE:DECIDE-BY-RULE @ #x107b52da>)
> > I have observed this behavior when classes are re-defined. It seems > that a new class object is created (in some cases?),
When a file is compiled in the current environment. The classes which do show the address pointer are those created at compile time.
> which seems like the only way to implement class re-definition in general.
> I can not > recall any problems with this, other then confusion when doing things > like (clos::class-direct-subclasses (find-class <class>)). I believe > that the objects without the address ("normal object identification > numbers") is the latest object and the others are old ones.
Yes. They are unknown to the rest of the system and they are of no danger, except that they mess up Xref, and they can create troubles with MOP. Please note: CLOS:CLASS-DIRECT-SUBCLASSES is exported from the CLOS package, which means this GF is part of MOP and not an internal to the implementation of the CLOS system. -- Luca Pisati Manager of Graphics Software Voice: (310) 577-0518 Nichimen Graphics Fax: (310) 577-0577 12555 W. Jefferson #285 EMail: <nichimen.com at mailto:pisati> Los Angeles, CA 90066 Web: http://www.nichimen.com