Path: utzoo!attcan!uunet!decwrl!bacchus.pa.dec.com!shlump.nac.dec.com!aiag.enet.dec.com!gunderson From: gunderson@aiag.enet.dec.com Newsgroups: comp.lang.lisp Subject: Re: Prototype methods in CLOS? Keywords: CLOS, LOOPS Message-ID: <15344@shlump.nac.dec.com> Date: 13 Sep 90 15:26:27 GMT References: <63236@bu.edu.bu.edu> Sender: newsdaemon@shlump.nac.dec.com Reply-To: gunderson@aiag.enet.dec.com () Organization: Digital Equipment Corporation Lines: 22 >Does CLOS support sending messages to classes in the way LOOPS (on the >Xerox 1108) used to (using the prototype syntax)? Otherwise, I have to >create an instance to evaluate a method for that class... is that >right? CLOS supports computational reflection. Ordinary CLOS classes are thus instances of a metaclass. When "defclass" is used, the metaclass defaults to "standard-class". Thus, a generic function specialized on standard-class will apply to the instances of this metaclass. These instances are the classes defined with defclass. A useful terminology refers to the ordinary CLOS classes as 1st-level instances of the metaclass and the instances of an ordinary CLOS class as 2nd-level instances of the metaclass. The term "2nd level instance" was first used in Graube, Nicolas, "Metaclass Compatibility." Proceedings of the 1989 Object Oriented Programming: System Languages, and Applications Conference (OOPSLA-89), pp. 305-315, 1989. In our own work here at DEC, we extended the terminology with "1st level instance". Alan Gunderson