UWVFP(FP0؋F&O F&G&G < ʋЋƋ$6&~&6&F&9EtL2p P3PF&EĞ&(6&>p t*6&>v t
T F&EF  ,6&> ~F  vFĞ&^&9~ Ì~ڹ- F*Ftz8ftF^&8Gui~ tF^&8GuWF+F;F| F9Fu~ tF@t8F^&8Gt,F+F;F~<.6&> t0^&GĞ&v&@F[FF,6&9~2F^&8GuFuӋvzvĞ&7X06&?&& DPĞ&& & 	26&>| u46&z  66& ^&Gȋƻ[ ؎86&>&I86&&a~ t;F*PĞ&& & 	46&z  F*Pv:6&&ud26&>| u46&z  Ğ&& & 	<6&6&6`	 P,>6&F&Ht8PP
|FPPh
P :6&6&6P
|FPPh
P *6&>v t	 B l PP ]	@6&6&6`Ğ&& & 	pP 	B6&R&TĞ&7FD6&FF6& fĞ&7FtH6&&J6&H6&J6& f% = ؎L6&FD6&FF6& ^_]ːU VN6&6 &6rP
N6&6 &6"P
vPrPh
P"Ph
FPrPXX@uNFP"PXX@uQN6&6 &6"P
P6&6(&6&"Ph
FP"PXX@u FV9Vv r9Fv ~ } 	~[s  PrPCu Ɔr  PrPVj36d6brP
udp P~QPVj3FPF- P86&6&6VPR6& [ RPFV-  RP,6&V2^]U WV+PP(FVN6&6 &6FP
N6&6 &64P
PFPh
P4Ph
FP4PXX@uQN6&6 &64P
P6&6(&6&4Ph
FP4PXX@u3FV9Vw1r9Fs*FVFV06&X& & 	FVFVFVPPFPCu  P6d6bVh4p P~QPVh43,602&9?~Dv3ɉNރ,.&Gt&u&g[GĞ0&9?ЋvFP[ Ğ0&/P86&6&6VWV2FPFPR^_]ːUTWVN6&6 &6FP
PFPh
PFPVt)FPV Qp Q~RQxWV^_]ːU"WVFP(FP0V< &m&EFT6&F&M FF&EF  ~,6&F 86&& ؉V$6&FN9Nu ~ t	F&-------------------------------------

;;; *EOF*
JF&G9F
tF&D8Fu0Fw&F;FF&@t +~9~~~[A9N~a~} +FFf~@~F 39N 86&&> ؉V~؃~ tFw&uZFw&*FtJF&F
t	F&8Eu4Fw&F
t	F&8EuFw&FF;F}F[A9N~V~ t} ^_]ːear all searchU WVPVt5P 6	u$FPVVP
VP ƆV PVPh
FPVPXXt$VPP(P P~W PVuP(P P P-PVP26	
FVu$VP0P(P PvvW PvV;t2VPLP(Pvv Pvvt$VPwP(P PF
 3RT&7&GLX"3NP&&G&<pt#pPWP(P PĞN&&WVF ~> MVv~~؎ZX& &+ǋV& &PIuvĞN&F&7&GĞR&&&GÌ V&$3&	&> 
&
&	ߎ&&3&OF&&&ʋH(3JL&&G*3&&F&ʋFPQ"@F ĞJ&&?~G~ VvN~& &+ǋV& &PAĞJ&&9ڋ~v*3&F&7&GĞJ&&@&GF,3&>
&
M.3&& ^_]ː&u0U.WV4Z9&  3\9&6^9&"`9&b9&r
d9&bf9&dh9&fj9&h+ɉNNvvZ 	RP"PrQP
V^V۹ ^VNV l9&>n u-n9&X&B&@	"P|	3brQPt~
 PvvPt!2PP ]	p9&tN 릐2PP ]	p9&u,
QP2PP ]	p9&u0~+PP(FV P+PP(ȋ+FV~9&&SQvvvVr	FV~9&&d 3SQRPFVd RPvvFVvvRP< RPSQRPvv⚺RPFމVTSQvvމFډVܚT< 3SQvvF։VؚFV؋Nڋ^+SQF҉VԚT+FVRPvvvvvvZ 	RPn9&X&r&p	N ~9&pr9^F&? tt9&>v t^&? t;^9&>" u\9&>6 u`9&> tPvv^&? tMt9&>v tA P Pv9&68&66`  Px9&GPv9&68&66 t ظ[ .ظ&&،F&Gt1&9}&Gع&;z
~36&z
F&9G|&Fu
&> tF&Gu
&
t~ u
&> tF&Gt
&
u PvvPt}pr9^F&? tMt9&>v tA P Pv9&68&66`  Px9&JPv9&68&66+PP(FVz9&>| u|9&z  ,
QP|%^&? tMt9&>v tA P Pv9&68&66`  Px9&GPv9&68&66 Pvv P n9&X&F&D	 Pvv Pr9&>p tMt9&>v tA P Pv9&68&66`  Px9&GPv9&68&66 ^_]UWV P3Z9& P
QP9+& &
~u19&9>"t2PP ]	p9&u
|]	u9& 9&F|#[ n9&&@t9&  2P
P ]	=tz9&>| u|9&z  r9&>p tt9&>v tT 9&>" t2PP ]	p9&tt 3P t 9&N&Ltsd P 	FV|]	t6~vv` 	u!d P 	FV]	|]	u͚]	3P9&6N&6L tmpP 	FVRP` 	tP~|]	t@2P
P ]	=t*	vv` 	t	3b2PP ]	p9&t;3PN ^9&>" u\9&>6 u`9&> t N ( ^_]ːU WV9
&? |%[ &/9&&~ڹ- Ğ
&? } ^9&>" t5~ t/F*Pn9&X&N&L	F*P3~9&& t1B*PWn9&X&R&P	
B*PFF;r`9&? u\9&>6 t?Ğ
&? |5~ t/F*Pn9&X&V&T	F*PO9&&uĞ&? u\9&>6 u^9&>" u n9&X&Z&X	9&6&6`	 P,9&6&6P
Ğ
&? |FPPh
 P  PP ]	n9&X&^&\	9&6&6`pP 	9&R&T3^9&"\9&6Ğ&^_]ːU욀"P9&6&6n9&X&&	9&6&6`嚖t9&>v t9&63P]	9&>L tr9&>d u.]	v]UVvu3,ȋƙ+T؋ʙùd P 	^]ːUWV~9&B&DF&9Eu	&9U
u&E
&Eu
9&& 9&6&6KP
KP"KF^F  9& & u ~N؋W&9Du&9T
tGGu 9&&Vu VV&? u$~9&> t3"PvW ~^FFG&< u^&7"PvW_9&6&6KP
KP"K^9&F&9t&9&> uF&5"PDvP
K^_]ːUt9&>v ur9&>p u3P,9&@P"PrQP
 P Q9&6&6` rQP9&6&6Z 9&@P9&6
"PrQP
 P P9&6&6` rQP9&6&6Z  9&bFt'P9&6&6"PrQP$9&6&6#PrQP P Q9&6&6` #P9&6&6Z  P P9&6&6` rQP9&6&6Z 3P9&6^ 	]ːt9&>v t&r9&>p t  P9&6&6 ːU.WV~FL^ }dǹ[ FԻ9^֌F&&GtFLBƌ@V~ t	F& ^&^&GtFF&C~ t
FF& ^&^&GtFF&D~ t
FF& ~ t$^&^&G@tFF&FFF& ^&^&GtFF&H~ t
FF& ^&^&GtFF&K~ t
FF& ^&^&GtyFF&L~ ti^&^&GF|@P+#+FP0#PFP
FڌҋȎڋ6? t!vNG^F&= uv~~ t$^&^&GtFF&MFF& ^&^&GtFF&N~ t
FF& ^&^&GtFF&S~ t
FF& ^&^&G tFF&R~ t
FF& ~ t^~&=&At
FF&XF& FL^_]ÐUt9&>v u r9&>p u 9&> u3P9&6+RP9&@P5#PrQP
 P Q9&6&6` rQP9&6&6Z 
 P P9&6&6` vv9&6&6Z T ]U WV3Pz9`b&? }Tt9&>v uEWĞ`&@PXn9\^&&f&ddP P P9XZ&w&7` dPĞX&w&7Z  PĞ`&7؋F&? tTPVĞ\&&j&hdP PPĞX&w&7` dPĞX&w&7Z 9TV&G&u9&w&7dP
A#PdPh
 PJ#PdP26	
Vu FPV QQNQFWV~ u vrĞT&w&7dP
M#PdPh
3PdQNQ* 6	
uqvFP; PdPFP* 6	
t@2 P PĞX&w&7` Ğ\&&n&lĞX&w&7Z T ^_]R$bCLS U.WV4 ع 4&
  &QP(4+&,&*&(&0&.p4^F&9t&4&9vt4&X&& F4^&? u - ~ٹ ~ t%FFF  4&F~FF  FP	RP4&6 &6 
PrQPrQPBFP	RP
PrQPrQPBF~js)+FFFFFF4^ތF&4&>v% 4^ڌF&4&>x^&4&
4&9s4&>  t^&3PN։VRQ QD~ u 
QP P	tuHtpHtHHtMcuW^&^&ub 4&h4&d4&X&&	뤚u
^&^&u2봎4&h 3P4&T 4&h t
F҉NԐ3^&9?~14&t&4	QPFuG^&9?ҚHu HuGHtvHu }W4&t
 ;E2PP ]	4&u)FP P	3Pvvָ P4&u^&^&t 4&d4&h4&X&&	u^&^&t밐62PP ]	4&u_4&> tPFP P	3Pvvָ P"2PP ]	4&uFFP Q	F  4&^&? tp4&>v td4&6&6
PrQP
 P P4&6&6` rQP4&6&6Z T 4&h 3PO
QP P	4&^&? tp4&>v td4&6&6
PrQP
 P P4&6&6` rQP4&6&6Z T 4&T4&h  
QP P	4&^&? tp4&>v td4&6&6
PrQP
 P P4&6&6` rQP4&6&6Z T 3P 5&	 5&b4&d5&f4&h Pvvָ Pf3Pvvָ PQ^_]WV+ 




&&r
&&6&"&&
& ع ^_ːUVXP 	FVRP` 	uuv2PP ]	4&tY	uP2PP ]	 tFF&
t*<t&P]		vv` 	t '2PP ]	:]	
 P	]	3^]ːU(WVb5&? u]v
vFVFtHt#HuHuHu )F  396F~(D Pv
vWd
uF;6F|ۋ~F
&} t=&u&uvvPbPF
&u/PFP
2vvbP
F
&u&u8PFPFǇF  Ğ&7bPEPPTPPVus5&&tZFǇF bP
Ğ&7bPWPPfPPVFu-~ uyP4&X&>&<	UFPVFPbPh
bPP<uX9Ft!bP4&X&B&@	FDF^FFV
~ ~ t+v
vZ 	RP4&X&F&D	PB>F uy396F~%D Pv
vWd
t
F;6F|96F/~ u=v
vZ 	RP4&X&J&H~F
&} t=&u&uvviPbPF
&uyPFP
2vvbP
F
&u&uPFPF? t5&6&6bP
FPbPh
  F;6F}rFFFFDFDFF+ƉF~vF^ ^F^FFFNuFbPBu$9FubP4&X&N&L?~ u bP4&X&R&P	 5&&u Ğ&7PPbPPbPRPD5&&t-Ğ&7PPbPbPB3^_]U($
5^ތF&? u 5^ڌF&G&u t66` 	u d P 	5&bFtP^&w&7PNFP^&w&7PNFPFPNFPXXuDNFPB^&74&X&&	5&z  ^&7]39&RzLxL9&9ptI9&9vt> PP9&6&6` #P9&6&6Z T #P|	]	9&$PP ]	 Pu 9&X&N&L	3n9&>p tJ9&>v t> PP9&6&6` #P9&6&6Z T $P|	 PV39&RzLxL9&9ptH9&9vt= PP9&6&6` &$P9&6&6Z T 
H$P|	:]	9&$PP ]	3PNtz9&>p tK9&>v t? PP9&6&6` S$P9&6&6Z T u$P|	3P u4^ːUWV9&
&
VȋڀFV$PSQ
$PvW
QPr9&QPZ 	RP$P	9&QPZ 	RPvW'3FF9&9~Q~9&9>t,$PvvPVZ 	RPvvG9&9>~$PvW89^F+&G&9Ft
QP:'~ uZzL0QP:~9^&G&t- P&w&7vv<
^&G SvW%$PvW~ t)9&>^ u9&>` t$6$1$+9&t$PvW9&u$PvW$PvW9&>بt+&~ u:&#Ft &ِFt vt
 &6بt$`~ t6 t$PvW t$PvWƨt3$" t$ t$
ƨt$PvW9&t~ t9&>z u$PvW$PvW$PvWw$PvWh9&>ju9&X&&$ډFVRP9&69&6$P P%PvvvvvW%PvW9&6&69&6&6 :&6&6#%PvvvvvWB:&6&6:&6&6:&6&60%PvvvvvW=%PvWD:&&&(0T|RPE%PvvvvvWvW"9&$PP ]	F  pP 	FVv~vvO%PvV
vV"PvVj!	F P Q\%QJ]	 PvV"PvVJ]	 PvvvJ]	F  ~ ~;~v^^ ؋Ǌ*3QǊ*&3ZF;v|։~v]	v_%PvV
 PvV"PvVJ]	FF= v P 	FVvv` 	t 2PP ]	
:&uvv` 	t|]	u	t 	3P(	-* ui%PvV
vV2ui6`#6^#vVFuN6p#6n#vvFt  ~9&X&&e%PFPWƋFv 2PP ]	9&X& & V\2PP ]	
:&u9&X& & ˎ9&X&&k%PFPVǋFvW	3^_]UWVF ǆP  Ɔ{ ǆ8o%:ǆ<w%>ǆ@~%BǆD%FǆH%J+NL9&
&
vx~prt89
+&G&n9&9ptH9&9vt= PP9&6&6` %P9&6&6Z T 
%P|	T:& P 	FVpP 	FV+FF{{<vv~ uZ6`#6^#%P~V P~V"P~VJ]	e read the rest
of this FAQ, to make sure your question isn't already answered. 

Scheme-related mailing lists and newsgroups are listed in the Scheme
FAQ, and AI-related mailing lists and newsgroups are listed in the AI FAQ.
     
First of all, there are several Lisp-related newsgroups:
   comp.lang.lisp          General Lisp-related discussions.
                           See below for archive information.

   comp.lang.clos          Discussion related to CLOS, PCL, and
                           object-oriented programming in Lisp.
                           Gatewayed to commonloops@cis.ohio-state.edu.
                           (or equivalently, comp.lang.clos@cis.ohio-state.edu)
                           See below for info on the newsgroup's archives.

   comp.org.lisp-users     Discussions related to Association of Lisp Users.
                           Gatewayed to the ALU mailing list. This is an
                           organizational mailing list/newsgroup, not a 
                           technical forum.

   comp.std.lisp           User group (ALU) supported standards. Moderated
                           by Brad Miller <miller@cs.rochester.edu>.
                           Submissions should be sent to 
                             lisp-standards@cs.rochester.edu
                           Archived on
                              ftp.cs.rochester.edu:/pub/lisp-standards/
                           Gatewayed to a mailing list (send mail to
                           lisp-standards-request@cs.rochester.edu to join).

   comp.lang.lisp.mcl      Discussions related to Macintosh
                           Common Lisp. This newsgroup is gatewayed
                           to the info-mcl@cambridge.apple.com
                           mailing list and archived on cambridge.apple.com.

   comp.lang.lisp.franz    Discussion of Franz Lisp, a dialect of Lisp.
                           (Note: *not* Franz Inc's Allegro.)

   comp.lang.lisp.x        Discussion of XLISP, a dialect of Lisp, and XScheme.

   comp.sys.xerox          Discussions related to using Medley (name exists
                           for historical reasons, and is likely to change
                           soon). Gatewayed to the info-1100 mailing list.

   comp.sys.ti.explorer    TI Explorers Lisp machines.

   comp.windows.garnet     Garnet, a Lisp-based GUI.

   comp.ai and subgroups   General AI-related dicusssion.


The newsgroup comp.lang.lisp is archived on ftp.gmd.de by month, from
1989 onward in /usenet/comp.lang.lisp. Individual files are in rnews
format. (They contain articles prefixed by a header line "#! rnews
<nchars> archive" where <nchars> is the number of characters in the
article following the header. That format is convenient for various
news processing programs (e.g.  relaynews) and is rather easy to
process from a lisp program too.)  A copy of the GMD archives for
comp.lang.lisp is available on cambridge.apple.com:pub/comp.lang.lisp.


We list several mailing lists below. In general, to be added to
a mailing list, send mail to the "-request" version of the address.
This avoids flooding the mailing list with annoying and trivial
administrative requests. [To subscribe to info-mcl, info-dylan, or
other mailing lists based at cambridge.apple.com, send a message to
majordomo@cambridge.apple.com with "subscribe <list_name>" in the
message body. Likewise use "unsubscribe <list_name>" to cancel your
subscription and "help" to get help.]

General Lisp Mailing Lists:

   common-lisp@ai.sri.com          Technical discussion of Common Lisp.
   lisp-utilities@cs.cmu.edu       Low volume moderated mailing list
       associated with the Lisp Utilities 
       Repository at CMU. (Also known as
                                   cl-utilities@cs.cmu.edu)
   lisp-faq@think.com              A mailing list concerning the contents
                                   of this FAQ posting only.

   alu@freud.arc.nasa.gov    Forum for use by members (current
                                   and prospective) of the Association
                                   of Lisp Users. It is bidirectionally
                                   gatewayed into the newsgroup
                                   comp.org.lisp-users. This is an
                                   organizational mailing list, 
                                   not a technical forum.

Particular Flavors of Lisp:

   info-mcl@cambridge.apple.com    Macintosh Common Lisp. Gatewayed
                                   to the comp.lang.lisp.mcl newsgroup.
   info-mcl-digest@cambridge.apple.com  Automatically generated digest format
              version of the info-mcl mailing list.

   cmucl-bugs@cs.cmu.edu           CMU Common Lisp bug reports

   slug@ai.sri.com                 Symbolics Lisp Users Group
       Archived on warbucks.ai.sri.com and 
                                   ftp.ai.sri.com:/pub/slug.

   allegro-cl@ucbvax.berkeley.edu  Franz Allegro Common Lisp

   kcl@cli.com                     Kyoto Common Lisp 
                                   Archived in
ftp.cli.com:pub/kcl/kcl-mail-archive
   kcl@rascal.ics.utexas.edu       Forwards to kcl@cli.com.

   lispworks@harlqn.co.uk          LispWorks

   clisp-list@ma2s2.mathematik.uni-karlsruhe.de   CLISP
 To subscribe, send mail to listserv@ma2s2.mathematik.uni-karlsruhe.de
 with "subscribe clisp-list <your full name>" in the message body.
        Use "help" to get a help message back and "unsubscribe clisp-list"
        to remove yourself from the list.

   info-ti-explorer@sumex-aim.stanford.edu  TI Explorer Lisp Machine
   bug-ti-explorer@sumex-aim.stanford.edu  TI Explorer Lisp Machine

   info-1100@cis.ohio-state.edu    Xerox/Envos Lisp machine environment,
                                   InterLisp-D, and Medley. Gatewayed to
                                   the newsgroup comp.sys.xerox. Will be
                                   moving to info-1100@anzus.com.

   franz-friends@berkeley.edu      The Franz Lisp Language.
   franz-composers@berkeley.edu    Maintainers of Franz Lisp.

Lisp Windowing Systems:

   cl-windows@ai.sri.com           Common Lisp Window System Discussions.
   bug-clx@expo.lcs.mit.edu        CLX (Common Lisp X Windows)
   clim@bbn.com                    Common Lisp Interface Manager
   clue-review@dsg.csc.ti.com      Common Lisp User-Interface Environment
   express-windows@cs.cmu.edu      Express Windows
   garnet-users@cs.cmu.edu         Garnet (send mail to garnet@cs.cmu.edu
                                   or garnet-request@cs.cmu.edu to be added)
   gina-users@gmdzi.gmd.de         GINA and CLM
   lispworks@harlequin.co.uk       LispWorks 
   winterp@netcom.com     WINTERP (OSF/Motif Widget INTERPreter)
   yyonx@csrl.aoyama.ac.jp         YYonX

Lisp Object-Oriented Programming:
   
   CommonLoops@cis.ohio-state.edu  (same as comp.lang.clos@cis.ohio-state.edu)
      Discussion related to CLOS, PCL, and object-oriented programming
      in Lisp.  The name is in hith Apple.

Thomas is available to the public by anonymous ftp at
       crl.dec.com:pub/DEC/Thomas
       gatekeeper.pa.dec.com:pub/DEC/Thomas
       altdorf.ai.mit.edu:archive/Thomas

The Thomas system is written in Scheme and runs under MIT's CScheme,
DEC's Scheme->C, and Marc Feeley's Gambit.  It can run on a wide range
of machines including the Macintosh, PC compatibles, Vax, MIPS, Alpha,
and 680x0.  Thomas generates IEEE compatible Scheme code.

A ready-made version of Thomas 1.1 interpreter built upon MacGambit
2.0 as a double-clickable Macintosh application is available by
anonymous ftp from cambridge.apple.com:/pub/dylan/gambit/ as
the file thomas-1.1-interp.hqx.

For discussion of Thomas, send a note to
   info-thomas-request@crl.dec.com 
to be added to the mailing list. 

DEC CRL's goals in building Thomas were to learn about Dylan by
building an implementation, and to build a system they could use to
write small Dylan programs. As such, Thomas has no optimizations of
any kind and does not perform well. 

The original development team consisted of:
          Matt Birkholz (Birkholz@crl.dec.com)
          Jim Miller (JMiller@crl.dec.com)
          Ron Weiss (RWeiss@crl.dec.com)
In addition, Joel Bartlett (Bartlett@wrl.dec.com), Marc Feeley
(Feeley@iro.umontreal.ca), Guillermo Rozas (Jinx@zurich.ai.mit.edu)
and Ralph Swick (Swick@crl.dec.com) contributed time and energy to the
initial release.

======== Marlais ========

Marlais is a simple interpreter for a language strongly resembling
Dylan. It is available by anonymous ftp from
   travis.csd.harris.com:/pub/ 
Currently runs on i386 and i486 (OS/2 or Linux), IBM PC/RT, IBM
RS/6000, HP9000/300, HP9000/700, DECstations (Ultrix), SGI (IRIX),
Sony News, Apple Macintosh (A/UX), Sun3, Sun4, Vax (4.3bsd and
ultrix), m88k (Harris Nighthawk running CX/UX), MIPS M/120, Sequent
Symmetry, Encore Multimax.  Contact Brent Benson
<brent@ssd.csd.harris.com> for more information.

================

The Gwydion Project at CMU is developing an innovative new software
development environment based on the Dylan language (and, in the
process, will make available a very high-quality implementation of
Dylan). This project includes many of the same people responsible for
CMU Common Lisp. (In Welsh mythology, Gwydion is the uncle of Dylan
and nephew of Math.) 

----------------------------------------------------------------
Subject: [4-7] What is Pearl Common Lisp?

When Apple Computer acquired Coral Software in January 1989, they
re-released Coral's Allegro Common Lisp and its optional modules as
Macintosh Allegro Common Lisp (now just Macintosh Common Lisp).
Coral's other product, Pearl Lisp, was discontinued at that time.
Pearl Lisp provides a subset of the functionality of MACL 1.3 and is
not even fully CLtL1-compatible (e.g., the implementation of defstruct is
different).

Despite rumors to the contrary, Pearl Lisp is not and never was public
domain. Nevertheless, Pearl Lisp and its documentation were placed in
the "Moof:Goodies:Pearl Lisp" folder on the first pressing of "Phil
and Dave's Excellent CD", the precursor to the current Apple
Developer's CD-ROM series.  Apple removed Pearl from later versions of
the developer CD-ROM distribution because of complaints from other
Lisp vendors. If you own a copy of Pearl Lisp or a copy of this
CD-ROM, you can make it runnable under System 7 with some slight
modifications using ResEdit.  To repeat, Pearl Lisp is NOT public
domain, so you must own a copy to use it.

To make it runnable, one needs to use ResEdit to make changes to the
BNDL and FREF resources so that it will connect to its icons properly.
This will make it respond to double-clicks in the normal manner and
make it be properly linked to its files. Detailed instructions for
modifying Pearl Lisp using ResEdit may be obtained from the Lisp
Utilities Repository by anonymous ftp from ftp.cs.cmu.edu in the
directory 
     /afs/cs.cmu.edu/project/ai-repository/ai/lang/lisp/impl/pearl/ 
as the file pearl-instructions.text.

After you've made the changes, it will run under System 7 on 68000s
and 68030s if you turn off 32-bit addressing. It seems to bomb on a
Quadra.

If you need a more powerful Lisp or one that is compatible with the
standard for Common Lisp, consider purchasing Macintosh Common Lisp.

----------------------------------------------------------------
Subject: [4-9] What Lisp-related discussion groups and mailing lists exist?
     
Before posting to any discussion group, pleas20@CS.CMU.EDU>
Nntp-Posting-Host: glinda.oz.cs.cmu.edu
Reply-To: lisp-faq@think.com
Organization: School of Computer Science, Carnegie Mellon
References: <LISP_4_763545626@CS.CMU.EDU>
Date: Sun, 13 Mar 1994 08:01:48 GMT
Approved: news-answers-request@MIT.Edu
Expires: Sun, 24 Apr 1994 08:00:26 GMT
Lines: 347

Archive-name: lisp-faq/part5
Last-Modified: Fri Mar 11 15:51:31 1994 by Mark Kantrowitz
Version: 1.42

;;; ****************************************************************
;;; Answers to Frequently Asked Questions about Lisp ***************
;;; ****************************************************************
;;; Written by Mark Kantrowitz and Barry Margolin
;;; lisp_5.faq -- 17917 bytes

This post contains Part 5 of the Lisp FAQ. It is cross-posted to the
newsgroup comp.lang.clos because it contains material of interest to
people concerned with CLOS, PCL and object-oriented programming in
Lisp. The other parts of the Lisp FAQ are posted only to the
newsgroups comp.lang.lisp and news.answers.

If you think of questions that are appropriate for this FAQ, or would
like to improve an answer, please send email to us at lisp-faq@think.com.

CLOS/PCL Questions (Part 5):

  [5-0]   What is CLOS (PCL) and where can I get it?
          How do you pronounce CLOS?
  [5-1]   What documentation is available about object-oriented
          programming in Lisp?  
  [5-2]   How do I write a function that can access defstruct slots by
          name?  I would like to write something like 
          (STRUCTURE-SLOT <object> '<slot-name>).   
  [5-3]   How can I list all the CLOS instances in a class?
  [5-4]   How can I store data and CLOS instances (with possibly circular
          references) on disk so that they may be retrieved at some later
          time?
  [5-5]   Given the name of a class, how can I get the names of its slots?
  [5-6]   Free CLOS software.

Search for \[#\] to get to question number # quickly.

In general, questions about object oriented programming in Lisp,
especially questions about using CLOS or compiling PCL, should be
directed to the newsgroup comp.lang.clos.

----------------------------------------------------------------
Subject: [5-0]  What is CLOS (PCL) and where can I get it?
                How do you pronounce CLOS?

CLOS (Common Lisp Object System) is the object-oriented programming
standard for Common Lisp. It is the successor to Symbolics FLAVORS and
Xerox LOOPS (Lisp Object Oriented Programming System). The acronym
CLOS is pronouned either as "See-Loss" or "Closs", depending on taste.
PCL (Portable Common Loops) is a portable CLOS implementation, and is
available by anonymous ftp from parcftp.xerox.com (13.1.64.94) in the
/pub/pcl/ directory. Also in the same directory are sources for CLX R5
and an inspecter.

Most Common Lisp implementations now include their own CLOS
implementations. Common Lisp implementations with native CLOS include:
MCL, {A}KCL, Allegro CL (including Allegro CL\PC), Ibuki, Lucid,
Medley, Symbolics Genera, CLOE, and Harlequin Lispworks. CMU CL uses a
customized version of PCL as their CLOS. However, not all native CLOS
implementations have as detailed a meta-object protocol as PCL. For
example, MCL 2.0 users sometimes use the july-1d version of PCL
instead of the native CLOS for precisely this reason.

The book ``The Art of the Metaobject Protocol'' (see below) includes
the CLOS Metaobject Protocol specification as chapters 5 and 6.  The
sources for the MOP spec itself are available from parcftp as
/pub/pcl/mop/spec.tar.Z, but this is no substitute for buying the
book, since the book contains a lot of useful explanatory material
beyond the spec. The Closette files related to the book are also
available from parcftp as /pub/pcl/mop/closette.lisp.

The CLOS code repository is available by anonymous ftp to
nervous.cis.ohio-state.edu [128.146.61.200] in the directory
pub/lispusers/clos/. If you've got code you'd like to add to the
repository, send mail to Arun Welch, commonloops-request@cis.ohio-state.edu.

----------------------------------------------------------------
Subject: [5-1] What documentation is available about object-oriented
               programming in Lisp? 

Books about object-oriented programming in Lisp include:

   1. dpANS CL describes the entire Common Lisp language, which includes the
      CLOS standard.  Informally, CLtL2 can also be used to learn about CLOS, 
      but please remember that CLtL2 is not an official X3J13 committee
      document. (The presentation of CLtL2 differs from that of the draft
      proposed standard, and some matters of fact have changed in the proposed
      standard since the publication of CLtL2.)

   2. Sonya E. Keene
      "Object-Oriented Programming in Common Lisp: 
       A Programmer's Guide to CLOS"
      Addison-Wesley (Reading, MA), 1989. 266 pages. ISBN 0-201-17589-4.
           Tutorial introduction to CLOS with many examples and
           a lot of good advice for designing large programs using CLOS.

   3. Jo A. Lawless and Molly M. Miller.
      "Understanding CLOS: the Common Lisp Object System"
      Digital Press, 1991. 192 pages.

   4. Gregor Kiczales, Jim des Rivieres, and Daniel G. Bobrow.
      "The Art of the Metaobject Protocol"
      MIT Press, 1991. 335 pages. ISBN 0-262-61074-4
           The first part of the book presents a model CLOS implementation,
           introduces the basic principles of metaobject protocols, and 
           works through the key elements of the CLOS Metaobject Protocol.
           The second half is the detailed specification of the CLOS
           Metaobject Protocol. A simple working interpreter suitable
           for experimentation is contained in an appendix.

   5. Robert R. Kessler and Amy R. Petajan.
      "LISP, Objects, and Symbolic Programming"
      Scott, Foresman and Company (Glenview, IL), 1988. 644 pages.
           Includes a small Lisp compiler.

   6. A short introduction to CLOS written by Jeff Dalton of the
      University of Edinburgh <J.Dalton@ed.ac.uk> is available by
      anonymous ftp from  
         aiai.ed.ac.uk:/lisp/random [192.41.104.6]
      as the file clos-guide.

   7. Andreas Paepcke
      "Object-Oriented Programming: the CLOS Perspective"
      MIT Press, 1993, ISBN 0-262-16136-2.
         This book is a collection of essays on the following topics:
           -  Description of CLOS and its design philosophy.
           -  The Metaobject Protocol and its use.
           -  Comparison of CLOS with Smalltalk, Eiffel, Sather, and C++.
           -  CLOS Uses and Methodology. Descriptions of two large CLOS
              applications (Sun's LispView and a hybrid knowledge
              representation tool) and an approach to documenting
              object-oriented protocols (similar to that of AMOP).
           -  Implementation details. Descriptions of TI CLOS for the
              Explorer and PCL's method dispatch mechanism.

----------------------------------------------------------------
Subject: [5-2] How can I write a function that can access defstruct slots 
               by name?  I would like to write something like 
               (STRUCTURE-SLOT <object> '<slot-name>).

There is currently no portable, built-in way to access structure slots
given only the name.  If your Common Lisp includes an implementation
of CLOS that supports the meta-object protocol specified in the
original X3J13 draft spec (document X3J13/88-003), then it probably will
allow (SLOT-VALUE <object> '<slot-name>); however, not all
implementations of CLOS currently provide this.  Lacking this, some
implementations may provide implementation-dependent functions that
allow access to structure slots by name; note that thi