🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: comp.lang.clos
Article #697

Re: Metaclass inheritance?

#697
From: Gregor Kiczales
Date: Sat, 09 Jan 1993 01:37
28 lines
1754 bytes
In article <1993Jan8.220317@di.epfl.ch> matomira@di.epfl.ch (Fernando Mato Mira) writes:

   Here is a way of implementing the rule for implementing metaclass
   inheritance proposed in my previous post...

   (defmethod ensure-class-using-class :around ((class t) name 
						&rest args
						&key (direct-superclasses nil)
						     (metaclass nil))
     ...)


This is a nice hack, and it is probably good enough to get some work
done, but I guess I should point out that it is illegal, in portable
code, according to the rules on pages 142, 143 and 144 of AMOP.
Specifically the rule that:

  Any method defined by a portable program on a specified generic
  function must have at least one specializer that is neither a
  specified class nor an {\bf eql} specializer whose associated
  value is an instance of a specified class.

The basic problem with methods like this is that two programs, written
separately, which both have methods like this, will interfere with each
other if they are loaded together.  That is why this rule is there.  We
talk about this, and the origin of all these rules, in more detail in
our OOPSLA'92 paper.
Technical Details
Message-ID: <GREGOR.93Jan8173751@tracer-bullet.parc.xerox.com>
Path: arc1-ca.pugleaf.net!sparky!uunet!cs.utexas.edu!sun-barr!ames!biosci!parc!gregor
References: <1993Jan8.154239@di.epfl.ch> <GREGOR.93Jan8110532@tracer-bullet.parc.xerox.com> <1993Jan8.220317@di.epfl.ch>

Show Full Headers
Complete Article Headers
Path: arc1-ca.pugleaf.net!sparky!uunet!cs.utexas.edu!sun-barr!ames!biosci!parc!gregor
From: gregor@parc.xerox.com (Gregor Kiczales)
Newsgroups: comp.lang.clos
Subject: Re: Metaclass inheritance?
Message-ID: <GREGOR.93Jan8173751@tracer-bullet.parc.xerox.com>
Date: 9 Jan 93 01:37:51 GMT
References: <1993Jan8.154239@di.epfl.ch> <GREGOR.93Jan8110532@tracer-bullet.parc.xerox.com>
 <1993Jan8.220317@di.epfl.ch>
Sender: news@parc.xerox.com
Followup-To: comp.lang.clos
Organization: Xerox Palo Alto Research Center
Lines: 28
In-Reply-To: matomira@di.epfl.ch's message of 8 Jan 93 21:03:17 GMT