Path: utzoo!attcan!utgpu!jarvis.csri.toronto.edu!cs.utexas.edu!tut.cis.ohio-state.edu!snorkelwacker!mit-eddie!uw-beaver!fluke!ssc-vax!bcsaic!snicoud From: snicoud@bcsaic.UUCP (Stephen Nicoud) Newsgroups: comp.object Subject: Re: Object packages for Common Lisp? Summary: PCL, CLOS, Flavors are ... Keywords: CLOS, PCL, Flavors, Common Lisp Message-ID: <17751@bcsaic.UUCP> Date: 6 Dec 89 22:43:09 GMT References: <1145@creare.UUCP> <21116@mimsy.umd.edu> Reply-To: snicoud@bcsaic.UUCP (Stephen Nicoud) Distribution: na Organization: Boeing Advanced Technology Center for Computer Sciences Lines: 43 In article <1145@creare.UUCP> cmm@creare.UUCP (Chris Morley) writes: >Can some one recommend a good object-oriented programming >package for Common Lisp (Sun CL or KCL, in particular). > >Chris I've worked with only one such system: CLOS (which may or may not also be referred to as PCL--Portable Common Loops). I believe it is public domain written by some folks at some Texas institution of higher learning. I don't know where to get documentation about this package, though I do have a copy of some documentation describing concepts and mechanisms. If you would like a copy, let me know and I can send it via US mail. I liked it alot, I thought it did everything I wanted it to do in terms of inheritance, defining subclasses as combinations of multiple parent classes, etc. There were a couple of bugs we had to get around, and it didn't seem to be incredibly fast, but what do you expect from Lisp (and I was even on a TI Explorer Lisp machine!). Overall, I recommend it. CLOS (Common Lisp Object System) "is an object-oriented extension to Common Lisp... It is based on generic functions, multiple inheritance, declarative method combination, and a meta-object protocol." CLOS will be part of the ANSI Common Lisp Standard (X3J13). A copy of the CLOS specification can be obtained via anonymous ftp from arisia.xerox.com (in the /pcl/doc directory) PCL (Portable Common Loops) is an implementation of CLOS designed to be portable to many different Common Lisps. PCL was developed by Xerox PARC. PCL can be obtained via anonymous ftp from arisia.xerox.com (/pub/pcl.tar.Z). A mailing list exists for PCL discussions (send to CommonLoops-coordinator@xerox.com for a request to be added to the list or for any PCL-related questions). Most, if not all, Common Lisp vendors will have (if not already) include CLOS in their Common Lisp implementations. You can expect that PCL's performance would not be as efficient as the native implementations. Flavors is a popular object-oriented system available in many Lisp implementations. Flavors has an extensive user base because of its pervasive use on Lisp Machines. -- Stephen Nicoud uw-beaver!bcsaic!snicoud Boeing Advanced Technology Center for Computer Sciences