CommonLisp-CompatibleArrayFunctionsFile:<lispusers>CMLARRAY.ttyRevised:Feb21,Jul1,andSep28,1983,byJonLWhiteThefollowingfunctionsarebasedonthedefinitionsintheCommonLispcommunity,andprovidemanyfeatureslackinginInterlisp'sARRAYsupport,inparticularmulti-dimensionalarrays,sharedarrays,andsuper-fastaccessing("open-coding"ofaccesswith"unsafe"primitives).Thesedefinitionsfollowthosefromthe"Excelsior"editionoftheCommonLispmanual(5August1983,copyrightGuyL.SteeleJr.)andsomeoftheprosebelowisreproducedfromtheaforesaid"Excelsior"editionbypermission.DocumentationTerminologyNotalloptionsandfeaturesoftheCommonLispspecifictionareimplemented;descriptionsoflimitationsareencolsedasnoteswithindoublesquarebrackets.Furthermore,forthebenefitofInterlisp-Dusers,somenon-portableextensionshavebeenmade,andthesearedescribedasnotedwithinsinglesquarebrackets.Anumberoffunctionstakeargumentsin"keyword"format;thismeansthatthearglist,aftersomepoint,alternatesbetweenanargumentwhichnamesthemeaningofthenextargumentandthenext"real"argument.E.g.,supposeCOLORMYWORLDisafunctionwithconceptuallydozensofparameters,butwhichistypicallycalledwithonlyoneortwoofthemsettoanon-defaultvalue.Thenyoumightsee(COLORMYWORLDSOMEBITMAP'HUEBLUE'DURATION5HOURS)wherethefirstargumentis"required",butalltheothersareoptionalandareobtainedfromtheappropriatepairintherealarglist;inthisexample,onesuch"keyword"argumentiscalledHUE,anditwillbesettothevalueofthevariableBLUE;also"coloring"willlastforadurationoftimefoundinthevariable5HOURS.Asageneralrule,anysymbol("litatom"intheInterlispsense)whichhasa"-"initsname,willhavethose"-"'sremovedintheInterlispincarnation(becauseofweirdpotentialinteractionwithCLISP).Thus,MAKE-ARRAYintheCommonLispmanualbecomesMAKEARRAYintheInterlispworld.Also,sinceInterlispdoesn'thave&optional,&rest,or&keyargumentspreading,thenanyfunctionwithsuchanargumentspectrumwillbeimplementedasano-spreadlambda;curlybracketswillenclosethenameforasequenceofsucharguments.CreationofArraysAnarray,forthepurposeofthisdocumentation,isaninstanceofanewdatatype(calledCMLARRAY),andisnotrelatedtothepreviously-documentedInterlisparrayfacility.Byconvention,allindexingintheCommonLispworldis0-origin.(MAKEARRAY<dimensionslst>...{keyword-arguments}...)<dimensionslst>isalistofnon-negativeintegersthataretobethedimensionsofthearray;thelengthofthelistwillbetherank,ordimensionality,ofthearray.Notethatif<dimensionslst>isNIL,thenazero-dimensionalarrayiscreated.Forconveniencewhenmakingaone-dimensionalarray,thesingledimensionmaybeprovidedasanintegerratherthanalistofoneinteger.Thekeywordargumentsare:ELEMENTTYPE-T,[orNIL,orPOINTER]meansthattheelementsareallgeneral���pÓ
ÍÔc/Ó
ÍÔb6qÓ
Ôb6Ó
ÍÔ`fiÓ¡ÓòÓ
oÓFÓÓÙÓÀÓ¢ÓyÓPÓ'Ó˛Ó’Ó¨ÓÉÓZÓ*‘Ó/fiÓ7sÔ`fiÓ
ÍÔ_ÜÓ
Ô_ÜÓ
ÍÔ^.Ó‡Ó÷Ó(-Ô^.Ó
ÍÔ\÷Ó÷Ó2ÓéÓÍÓ!oÓ$ÀÓ('Ó+ÉÓ0çÓ3Ó7EÓ;~Ô\÷Ó
ÍÔ[~Ó
Ô[~Ó
ÍÔZ&Ó
ÔZ&Ó
ÍÔXŒÓ
ÔXŒÓ
ÍÔWvÓ¡ÓòÓ
oÓFÓ¢ÓÓ"nÓ% Ó*‘Ó-YÓ0µ
Ó:…Ó=NÓ?ŸÔWvÓ
ÍÔV	Ó'	ÓdÓ ¿Ó'xÓ+´Ó3:Ó9ÚÓ<w
ÓE∫ÔVÓ
ÍÔT∆ÓÙÓÉÓ	Ó#EÓ2cÓ9Ó>¸ÓD„ÔT∆Ó
ÍÔSnÓF	ÓÉÓÈ
Ó,ÇÓ/Ó4ËÓ9Ó?ŸÔSnÓ
ÍÔRÓ’Ó¨Ó∂
Ó% Ó+´Ó0µÓ4ËÓ8D
ÓBXÓH?ÔRÓ
ÍÔPæÓ
oÓÀ	ÓÓÈÓ"nÓ(OÓ-YÓ5øÓ9Ó;†ÓAÅÓD„ÔPæÓ
ÍÔOfÓFÓyÓ˛ÓZÓdÓ"nÓ$Û	Ó.0Ó2cÓ5øÓ>%
ÓH9ÓH?ÔOfÓ
ÍÔNÓ¢Ó'
ÓjÔNÓ
ÍÔL∂Ó
ÔL∂Ó
ÍÔK^Ó¡ÓòÓ
oÓFÓÓÙÓÀÓ¢ÓyÓPÓ'Ó˛Ó’Ó¨ÓÉÓZÓ1ÓÓflÓ∂Ó'x
Ó0ªÔK^Ó
ÍÔJÓ
ÔJÓ
ÍÔHÆÓ¡ÓòÓ
oÓFÓ¢Ó˛Ó∂ÓÓ&°Ó)&Ó,ÇÓ2cÓ6ñÓAÅÓD›ÓD„ÔHÆÓ
ÍÔGVÓ’Ó ¿Ó#E
Ó-YÓ0µÓ8DÓ:…Ó?”ÓE¥ÓE∫ÔGVÓ
ÍÔE˛ÓÀÓ¨ÓÓÈÓ*‘Ó.0Ó1åÓ8DÓ:…
ÓD›ÓJæÓJƒÔE˛Ó
ÍÔD¶ÓÓ	Ó#EÓ'xÓ+´Ó0µÓ4Ó9Ó<wÓD›ÓGbÓGhÔD¶Ó
ÍÔCNÓÙÓ’Ó∂Ó!óÓ),ÔCNÓ
ÍÔAˆÓ
ÔAˆÓ
ÍÔ@ûÓ¡ÓòÓ
oÓF�ÓÙÓ’ÓZÓ ¿Ó$ÛÓ-YÓ/fiÓ8DÓ>¸ÓC/ÓGhÔ@ûÓ
ÍÔ?FÓÓyÓÓÓ#EÓ)&	Ó2cÓ9Ó;†ÓC/ÓGhÔ?FÓ
ÍÔ=ÓÓÙÓPÓÓçÓÈÓ$Ó+´Ó/Ó2cÓ6ñÓ<wÓDÔ=ÓÓ
ÍÔ<ñÓÙÓ¨ÓÉÓ"nÓ$Û�Ó&°Ó.0Ó2cÓ=NÓB^Ô<ñÓ
ÍÔ;>Ó
o
ÓÉÓflÓÈÓ"nÓ*‘Ó0µÓ4ËÓ9Ó<wÓ>¸ÓBXÓDÔ;>Ó
ÍÔ9ÊÓÓyÓ˛�Ó¨
Ó ¿Ó&°Ó'xÓ+´Ó/Ó4Ó6úÔ9ÊÓ
ÍÔ8éÓ¡ÓòÓ
oÓFÓ	Ó#EÓ'xÓ+´Ó4Ó9¯Ô8éÓ
ÍÔ76ÓÙÓPÓZÓÈÓ"n
Ó,ÇÓ/fiÓ3:Ó6ñÓ<wÓ?”ÓFëÔ76Ó
ÍÔ5fiÓFÓ¢Ó1ÓdÓ ¿
Ó*‘Ó/Ó1åÓ4ËÓ9Ó@™ÓAÅÓDÓGhÔ5fiÓ
ÍÔ4ÜÓyÓ’ÓÓ"nÓ)˝Ó,ÇÓ2cÓ6ñÓ9ÚÓ<wÓ@™ÓC/ÓFãÓFëÔ4ÜÓ
ÍÔ3.Ó
oÓÀÓ’ÓZÓ∂Ó#EÓ(OÓ,Ç	Ó5øÓ9ÚÓ>%ÓAÅ�ÓB^Ô3.Ó
ÍÔ1÷ÓyÓ˛Ó1Ó;Ó ¿Ó$Ó+´Ó1íÔ1÷Ó
ÍÔ0~Ó
Ô0~Ó
ÍÔ/&Ó¡ÓòÓ
oÓFÓÀ�ÓyÓ1Ó;Ó!óÓ'x	Ó0µÓ3:Ó6ñÓ>¸ÓDÔ/&Ó
ÍÔ-ŒÓÙÓP�Ó˛ÓZÓflÓ;Ó#EÓ'xÓ+´Ó0µÓ5øÓ<wÓ>¸ÓAáÔ-ŒÓ
ÍÔ,vÓP
ÓdÓ$ÛÓ'xÓ,ÇÓ4Ë
Ó>¸ÓC/ÓC5Ô,vÓ
ÍÔ+Ó¢ÓyÓÉ	Ó ¿Ó#EÓ&°	Ó/fiÓ5øÓ<wÓDÔ+Ó
ÍÔ)∆Ó
oÓÀÓ1ÓÓÈÓ$ÛÓ)˝Ó2cÓ9Ó=N	ÓE∫Ô)∆Ó
ÍÔ(nÓÀÓPÓÉÓ	Ó(OÓ,ÇÓ/fiÓ7mÓ;†Ó?”ÓAáÔ(nÓ
ÍÔ'ÓyÓÓ;Ó ¿
Ó*‘Ó-Y�Ó/Ó7mÓ>%ÓB^Ô'Ó
ÍÔ%æÓyÓ¨ÓdÓ ¿Ó$ÛÓ(O�Ó)˝Ó1åÓ4Ó8D	Ó@∞Ô%æÓ
ÍÔ$fÓ
Ô$fÓ
ÍÔ#Ó
Ô#Ó
ÍÔ!∂Ó
Ô!∂Ó
ÍÔ ^Ó¡ÓòÓ
oÓFÓÓÙÓÀÓ¢ÓyÓPÓ'Ó˛Ó’Ó¨ÓÉÓZÓ1ÓÓflÓ∂ÓçÓdÓ;ÓÓ&°Ó)&Ó.6Ô ^Ó
ÍÔÓ
ÔÓ
ÍÔÆÓ¡ÓòÓ
oÓFÓÀÓ¨ÓÓdÓ$Ó&°Ó*‘
Ó7mÓ9ÚÓ<wÓDÓFã�ÓGhÔÆÓ
ÍÔVÓFÓ’Óç	Ó% Ó)&Ó+´Ó/Ó5øÓ8DÓ;†
ÓD„ÔVÓ
ÍÔ˛	Ó'ÓçÓ!óÓ)˝Ó*‘Ó-Y
Ó7mÓ:…ÓBXÓD›ÓGhÔ˛Ó
ÍÔ¶	Ó'Ó1Ó∂Ó#KÔ¶Ó
ÍÔNÓ
ÔNÓ
ÍÔˆ	Ó'Ó˛Ó"nÓ#EÓ&°Ó7mÓ:…�Ó;¶ÔˆÓ
ÍÔûÓ
ÔûÓ
ÍÔFÓ¡ÓòÓ
oÓFÓ∂Ó;�ÓÈÓ$Ó&°Ó1åÓ9Ó=NÓ@™ÓC/ÓD„ÔFÓ
ÍÔÓÓF	ÓÉÓÓdÓ#EÓ&°Ó,ÇÓ/Ó2cÓ6ñÓ:…Ó=NÓ@™ÓE¥ÓGhÔÓÓ
ÍÔñÓZÓflÓ;Ó$Ó$ÛÓ)&Ó-YÓ/fiÓ=NÓ?”ÓDÓH9ÓH?ÔñÓ
ÍÔ>�ÓòÓflÓÈÓ"nÓ)˝Ó*‘Ó.0
Ó8DÓ<wÓBX�ÓDÓGhÔ>Ó
ÍÔÊ
Ó˛ÓflÓ;Ó$Ó,ÇÓ/fiÓ2cÓ9ÚÓ<wÓ>¸ÓE¥ÓE∫ÔÊÓ
ÍÔ
éÓÀÓ˛�Ó¨ÓflÓdÓ ¿Ó(OÓ)&Ó),Ô
éÓ
ÍÔ6Ó
Ô6Ó
ÍÔ
fiÓFÓ˛ÓdÓ ∆Ô
fiÓ
ÍÔ	ÜÓ¡ÓòÓ
oÓF
ÓâÔ	ÜÓ
ÍÔ.Ó¡ÓòÓ
oÓFÓÓÙ�Ó¢ÓyÓ˛ÓZÓçÓÓ&°Ó+´Ó/fiÓ3:Ó:…Ó>%ÓAÅÓBXÓH?Ô.�������
7����
Íq?Ä[«ÿ����������������������Lisp"pointers";thisisthedefault.-FIXNUM,[orFIXP,orCELL]forentrieswhichareintegersstoredas2'scomplement32-bits[[31-bitsinInterlisp/VAX,36-bitsinInterlisp-10]]-FLONUM,[orFLOATP]entriesareall32-bitIEEEformatfloating-point[[36-bitpdp10formatforInterlisp-10]]Thefollowingtypespecifiersaresub-typesofINTEGERforwhichtheaccessingismuchmoreefficientthanforotherrandomfieldsizes.-(MOD65536)[orDOUBLEBYTE;oradditionally,forInterlisp-Donly,WORDorSMALLPOSP]for16-bitnon-negativeintegers.-(MOD256)[orBYTE,orCHARACTER]for8-bitnon-negativeintegers.-(MOD16)[orNIBBLE]for4-bitnon-negativeintegers.-(MOD2),orBIT,forsingle-bitentries.[[Ingeneral,theCommonLisptypeheirarchyisn'tsupported;thusonlytheexplicitnamesabovewillwork.However,forInterlisp-D,asof28-Sep-83,thetype(MODn)foranyreasonable"n",issupported.]]INITIALELEMENT-ArgumentmustbeaquantityofthetypespecifiedbytheELEMENTTYPEargument,andisusedtoinitalizealltheentriesofthearray.DefaultisNILforpointertype,andzerofornumerictypes.INITIALCONTENTS-Ifthearrayiszero-dimensional,thethisspecifiesitscontents;otherwise,itmustasequencewhoselengthisequaltothefirstdimension,andeachelementthereofmustbeanestedstructureforanarraywhosedimensionsaretheremainingdimensions,andsoon.DISPLACEDTO-Argumentwillbeanarraywhoselinearizeddatasegmentwillbesharedwiththeonebeing"made";seealsotheDISPLACEDOFFSETargumentalso.DISPLACEDINDEXOFFSET-Whenthedatavectorisbeing"shared",thisspecifiestheoffsetfromtheoriginofthedatavectoratwhichthenewarraywillhaveitszero-origin.Theimplementationalconstraints,asspecifiedbythesymbolicconstantsARRAY-RANK-LIMIT,ARRAY-DIMENSION-LIMIT,andARRAY-TOTAL-SIZE-LIMITare:Ranksupto63aresupported;eachindividualdimensionofanarrayisconstrainedonlytobeaFIXP;inInterlisp-D,thetotalstorageforthedatablockofanarraymaynotexceed(2^16-5)*2^5bits,andsinceapointerrequires32bits,thenanarraymaycontainupto2^16-5pointerelements,or2^18-20byteelements;Interlisp/VAXandInterlisp-10mayhaveotherconstraints.[[Thefollowinglimitationsexistasof9-MAY-84:(1)the:FILL-POINTERkeywordargumentisnotimplementedatall;(2)allarraysautomaticallyhavethe:ADJUSTABLEproperty;(3)the"nestedstructures"usedtospecifythe:INITIAL-CONTENTSmaybeeitheranotherarrayofthesamedimensionality,orelsejustlistsoflists.(4)thesymbolicconstantsARRAY-RANK-LIMIT,ARRAY-DIMENSION-LIMIT,andARRAY-TOTAL-SIZE-LIMITarenotactuallyinthecode.Justbeawareoftheselimitsbyreadingthedocumentationpresentedabove.]]Examples:(MAKEARRAY5)-Createaone-dimensionalarrayoffiveelements(MAKEARRAY'(34)'ELEMENTTYPE'(MOD256))--Createatwo-dimensionalarray,3by4,with8-bitelements;(SETQA(MAKEARRAY'(423)'INITIALCONTENTS'(((abc)(123))((def)(312))���Ó
ÍÔc8Ó
ÍÔb6qÓ¡ÓòÓ
oÓFÓÓÙÓÀÓ¢ÓyÓPÓ'ÓZ
Ó"nÓ&°Ó)&Ó,ÇÓ3@Ôb6Ó
ÍÔ`fiÓ¡ÓòÓ
oÓFÓÓÙ�Ó¢ÓyÓ1ÓçÓ!óÓ$Ó)&Ó,ÇÓ3:Ó8DÓ;†ÓC/ÓIÓIÔ`fiÓ
ÍÔ_ÜÓ¡ÓòÓ
oÓFÓÓÙÓÀÓ¢ÓyÓPÓ'Ó¨Ó	Ó#EÓ)˝Ó2cÓ4Ë
ÓAÅÓGhÔ_ÜÓ
ÍÔ^.Ó¡ÓòÓ
oÓFÓÓÙÓÀÓ¢ÓyÓPÓ'Ó¨
Ó"tÔ^.Ó
ÍÔ\÷Ó¡ÓòÓ
oÓFÓÓÙ�Ó¢ÓyÓ1ÓçÓ#EÓ)˝Ó-YÓ0µÓ6ñÓ:…Ó@™Ó@™Ô\÷Ó
ÍÔ[~
Ó≤Ô[~Ó
ÍÔZ&Ó¡ÓòÓ
oÓFÓÓÙÓÀÓ¢ÓyÓPÓ'Ó∂Ó ¿Ó&°Ó)˝
Ó5≈ÔZ&Ó
ÍÔXŒÓ¡ÓòÓ
oÓFÓÓÙÓPÓ∂ÓÈ	Ó)&Ó,ÇÓ4ËÓ7mÓ>%ÓAÅÓFãÓIÔXŒÓ
ÍÔWvÓ¡ÓòÓ
oÓFÓÓÙÓZÓflÓÓ#EÓ+´Ó/fiÓ3:Ó8DÓ>%ÓC/ÓIÓIÁÓJæÓJƒÔWvÓ
ÍÔVÓ¡ÓòÓ
oÓFÓÓÙ�Ó¢ÓyÓ¨ÓçÓÈ
Ó)˝Ó,ÇÓ8DÓ;†
ÓE¥ÓIÌÔVÓ
ÍÔT∆Ó¡ÓòÓ
oÓFÓÓÙÓÀÓ¢ÓyÓPÓ'ÓZÓfl	Ó$Ó'xÓ-YÓ8DÓ?ŸÔT∆Ó
ÍÔSnÓ¡ÓòÓ
oÓFÓÓÙ�Ó¢ÓyÓ¨ÓflÓ;Ó#EÓ% 	Ó/Ó2cÓ7mÓBXÓIÌÔSnÓ
ÍÔRÓ¡ÓòÓ
oÓFÓÓÙ�Ó¢ÓyÓ¨ÓÓdÓ$Ó'xÓ(OÓ-YÓ8DÓ?ŸÔRÓ
ÍÔPæÓ¡ÓòÓ
oÓFÓÓÙ�Ó¢ÓyÓ¨ÓÓçÓ ¿Ó$	Ó-YÓ4ÔPæÓ
ÍÔOfÓ¡ÓòÓ
oÓFÓÓÙÓ'Ó∂Ó	Ó(OÓ,ÇÓ4ËÓ9Ú	ÓC/ÓGbÓGbÔOfÓ
ÍÔNÓLÔNÓ
ÍÔL∂Ó¡ÓòÓ
oÓFÓÓÙÓÀÓ¢Ó˛ÓçÓ!óÓ&°Ó*‘Ó/fiÓ0µÓ8DÓ;†ÓFãÓIÓIÔL∂Ó
ÍÔK^ÓûÔK^Ó
ÍÔJÓ¡ÓòÓ
oÓFÓÓÙÓÀÓ¢	ÓflÓ;Ó"nÓ&°Ó)&Ó,ÇÓ/fi	Ó9Ó=NÓ?”ÓIÌÔJÓ
ÍÔHÆÓ¡ÓòÓ
oÓF
ÓflÓÂÔHÆÓ
ÍÔGVÓ¡ÓòÓ
oÓFÓÓÙ�Ó¢ÓyÓÓ;Ó ¿�Ó"nÓ)˝Ó,ÇÓ/fiÓ4Ó<wÓ>¸ÓBXÓBXÔGVÓ
ÍÔE˛
Ó˛ÓÔE˛Ó
ÍÔD¶Ó¡ÓòÓ
oÓFÓÓÙÓÀÓ¢ÓyÓPÓ∂ÓÓ!óÓ% Ó(OÓ0µÓ4Ó7mÓ>%Ó@™ÓDÓIÁÓJæÓJƒÔD¶Ó
ÍÔCNÓ¡ÓòÓ
oÓFÓÓÙÓÀÓ¢ÓyÓPÓÓçÓÈÓ#EÓ)˝Ó/Ó2cÓ6ñÓ9ÚÓ@™ÓE∫ÔCNÓ
ÍÔAˆÓ¡ÓòÓ
oÓFÓ∂ÓºÔAˆÓ
ÍÔ@ûÓ¡ÓòÓ
oÓFÓÓÙ�Ó¢ÓyÓ˛ÓZÓdÓÈÓ/Ó2cÓ6ñÓ>¸ÓBXÓIÌÔ@ûÓ
ÍÔ?FÓ¡ÓòÓ
oÓFÓÓÙÓÀÓ¢ÓyÓP	ÓçÓÓ#E�Ó$ÛÓ,ÇÓ1åÓ7mÓ9ÚÓ>¸ÓAÅÓD›ÓIÔ?FÓ
ÍÔ=ÓÓ¡ÓòÓ
oÓFÓÓÙÓÀÓ¢ÓyÓP	ÓçÓÈÓ$Ó*‘Ó1åÓ5øÓ8D�Ó9ÚÓ?”ÓH9ÓH9Ô=ÓÓ
ÍÔ<ñÓFÓLÔ<ñÓ
ÍÔ;>Ó¡ÓòÓ
oÓFÓÓÙÓÀÓ¢ÓyÓPÓ’ÓflÓÈ	Ó)&Ó,ÇÓ/fiÓ8D
ÓBXÓE¥ÓH9ÓH9Ô;>Ó
ÍÔ9ÊÓ
uÔ9ÊÓ
ÍÔ8éÓ¡ÓòÓ
oÓF
ÓâÔ8éÓ
ÍÔ76Ó¡ÓòÓ
oÓFÓÓÙ�Ó¢ÓyÓÓ;Ó ¿Ó#EÓ(OÓ-Y	Ó6ñÓ:…ÓAÅÓE¥ÓH9ÓH?Ô76Ó
ÍÔ5fiÓ¡ÓòÓ
oÓFÓÓÙÓÀÓ¢ÓyÓPÓ1ÓdÓ ¿Ó$Ó)&Ó/fiÓ0µÓ4Ó8DÓ;†ÓIÓIÔ5fiÓ
ÍÔ4ÜÓ¡ÓòÓ
oÓFÓÓÙÓÀÓ¢ÓyÓPÓflÓÈÓ ¿Ó!óÓ!ùÔ4ÜÓ
ÍÔ3.Ó¡ÓòÓ
oÓFÓÔ3.Ó
ÍÔ1÷Ó¡ÓòÓ
oÓFÓÓÙ�Ó¢ÓyÓ¨ÓÓ;Ó$Ó&°Ó+´Ó4Ó8DÓ@™ÓDÓIÁÓIÌÔ1÷Ó
ÍÔ0~Ó¡ÓòÓ
oÓFÓÓÙÓÀÓ¢ÓyÓPÓÉÓflÓ ¿Ó#EÓ&°Ó*‘Ó0µÓ3:Ó8DÓ;†Ó>¸ÓDÓH9ÓH9Ô0~Ó
ÍÔ/&ÓÓ#Ô/&Ó
ÍÔ-ŒÓ¡ÓòÓ
oÓFÓÓÙÓÀÓ¢ÓyÓPÓ¨Ó ∆Ô-ŒÓ
ÍÔ,vÓ
Ô,vÓ
ÍÔ+ÓFÓçÓ'xÓ)˝Ó2cÓ4ËÓ8DÓ?”ÓH9ÓH?Ô+Ó
ÍÔ)∆ÓÓ-YÓ0µÓDÓH9ÓH?Ô)∆Ó
ÍÔ(nÓÙÓyÓ˛ÓÉÓfl	Ó$Ó(O	Ó1åÓ9ÚÓ<wÓ>¸ÓDÓFãÓFëÔ(nÓ
ÍÔ'
Ó˛Ó1Ó∂Ó;�ÓÈÓ$ÛÓ'xÓ2cÓ5øÓ:…ÓAÅÓD›ÓH9ÓH?Ô'Ó
ÍÔ%æÓÓ'Ó¨Ó1Ó;Ó!óÓ$ÛÓ*‘Ó5øÓ:…Ó>%ÓC/�ÓD›ÓD›Ô%æÓ
ÍÔ$fÓ¢Ó®Ô$fÓ
ÍÔ#ÓyÓ˛ÓÓ;Ó ¿Ó% Ó)&Ó/fiÓ2cÓ4ËÓ:…ÓAÅÓIÁÓIÌÔ#Ó
ÍÔ!∂Ó
oÓ'ÓZÓ ¿Ó,ÇÓ/fiÓ:…Ó>%ÓBXÓGbÓGhÔ!∂Ó
ÍÔ ^ÓÔ ^Ó
ÍÔÓ
ÔÓ
ÍÔÆÓÙÓZ
Ó"nÓ'xÓ)˝Ó,ÇÓ4ÔÆÓ
ÍÔVÓ¡ÓÓyÓ;Ó$ÛÓ,ÇÓ/Ó2c
Ó<wÓ>¸ÓC/ÓC5ÔVÓ
ÍÔ˛Ó¡ÓÓyÓZÓ$Ó(OÓ+´
Ó5øÓ=TÔ˛Ó
ÍÔ¶Ó¡ÓÓyÓ1
Ó#EÓ'xÓ)˝Ó0µÓ4ÓC/ÓFãÓH?Ô¶Ó
ÍÔNÓ¡ÓòÓ
oÓFÓÓ˛Ó∂Ó ¿Ó#EÓ&°Ó*‘Ó8DÓ:…Ó>¸ÓC/ÓH9ÓIÌÔNÓ
ÍÔˆÓ¡ÓòÓ
oÓFÓÓ-ÔˆÓ
ÍÔûÓ¡ÓÓyÓÓ"nÓ1åÓD›ÓGhÔûÓ
ÍÔFÓ¡ÓòÓ
oÓFÓÓ"nÓ% Ó)&Ó0µÓ3:Ó6ñÓ;†Ó<wÓ@™ÓC/ÓGhÔFÓ
ÍÔÓÓ¡ÓòÓ
oÓFÓÓ¢Ó¨ÓçÓÓ% Ó)&Ó4ËÓ=NÓDÔÓÓ
ÍÔñÓ
ÔñÓ
ÍÔ>ÓÔ>Ó
ÍÔÊÓ¡ÓòÓ
oÓF	ÓÉÓÓfl�ÓçÓdÓ#E�Ó$ÛÓ2cÓ7mÓ9ÚÓ>%ÓD„ÔÊÓ
ÍÔ
éÓ¡ÓòÓ
oÓF	ÓÉÓflÓdÓ(OÓ-YÓ2cÓ3:Ó5øÓ;†�Ó=NÓ@∞Ô
éÓ
ÍÔ6Ó¡ÓòÓ
oÓFÓÓÙÓÀÓ¢
Ó∂Ó!ó�Ó#EÓ% Ó(OÓ,ÇÓ1åÓ9!Ô6Ó
ÍÔ
fiÓ¡ÓòÓ
oÓFÓP�Ó˛	Ó;Ó!ó�Ó#EÓ% Ó4Ó4Ô
fiÓ
ÍÔ	ÜÓ¡ÓòÓ
oÓFÓÓÙÓÀÓ¢ÓyÓPÓ'Ó˛Ó’Ó¨ÓÉÓZÓ1ÓÓflÓ∂ÓçÓdÓ;Ó#E�Ó$ÛÓ'xÓ)˝�Ó+´Ó.6Ô	ÜÓ
ÍÔ.Ó¡ÓòÓ
oÓFÓÓÙÓÀÓ¢ÓyÓPÓ'Ó˛Ó’Ó¨ÓÉÓZÓ1ÓÓflÓ∂ÓçÓdÓ;ÓÓÈÓ#E�Ó$ÛÓ'xÓ)˝�Ó+´Ó.6Ô.�������
'����
Íq?Ä[«]��������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������((ghi)(231))((jkl)(000)))))(MAKEARRAY'(423)'INITIALCONTENTSA)(SETQB(MAKEARRAY107'ELEMENTTYPE'BIT))(SETQC(MAKEARRAY8'ELEMENTTYPE'BYTE'DISPLACEDTOA'DISPLACEDINDEXOFFSET51)ThusBandCsharetheirdataportion;thesecondelementofC,withindex1,isthebyteobtainedbyconcateningthebitswithindices67through74ofB.NotethatelementtypespecificationofBYTEisequivalenttothatinthefirstexampleof(MOD256).Compatibililtynote:Formulti-dimensionarrays,bothLispMachineLispandFORTRANstoreincolumn-majororder;MacLispstoresarraysinrow-majororder.A"row"isthecollectionofallelementsobtainedbyholdingallbutthelastindexconstant,andcyclingthroughthatindexinorderfrom0toitslimit.[Thispackagegenerallystoresinrow-majororder,buttheremaybeocasional"gaps"intheindex-sequencingiftheALIGNMENToptionsisused.Seebelowforadescriptionofthenon-CommonLispoptionALIGNMENT.]AccessingandChangingtheElementsofanArrayThemainprimitivetoaccesstheelementsofanarrayiscalledAREF(for"ArrayREFerenceofelement").(AREF<array>...{subscripts}...)Thisreturnstheelementof<array>specifiedbythesubscripts(whicharealltheremainingargumentsafter<array>),andeachsubscriptmustbeanon-negativeintegerlessthanthecorrespondingarraydimension.[ThemainprimitivetochangethecontentsofanarrayiscalledASET(for"ArraySETvalueofelement"),modeledaftertheMITLispMachinename.Ultimately,ASETwilloperatesoastotranslateintothesamecodethatSETFwouldhaveproducedthusInterlispusersneednotfearthatsuchcodewon'trunona"by-the-book"CommonLispimplementation.(ASET<newvalue><array>...{subscripts}...)Changesthecontentsoftheelementof<array>accessedby(AREF<array>...{subscripts}...)tobe<newvalue>.][[CommonLispdoesnotrequireseparatenamesfortheupdatefunctions;updatingmayalwaysbespecifiedbytheSETFconstruct,whichtakesanaccessexpressionanda"newvalue"muchthewayInterlisp'sCHANGEdoes.Asof28-Sep-83,thereisnochangetranentryforAREF,butitisexpectedtobeaddedsomeday.]]InformationalFunctions(ARRAYELEMENTTYPE<array>)Returnsatypespecifierforthesetofobjectsthatcanbestoredin<array>.Thissetmaybelargerthanthesetrequestedwhen<array>wascreated;thatis,(ARRAYELEMENTTYPE(MAKEARRAY5'ELEMENTTYPE'(MOD8)))couldbe(MOD8),orBYTE,or(MOD256),etc.,orevenPOINTER.[[asof28-Sep-83,onlythetypesenumeratedaboveunderMAKEARRAYaresupported;thereisno"coercionupwards"inordertofindatype-specifierwhichcouldholdtheelementsofsomenon-enumeratedtype.RememberalsothattheInterlisp-Dversionsupports(MODn)forallintegraln.]](ARRAYRANK<array>)Returnsthenumberofdimensions(axes)of<array>;toparalleltheindexingrange,thisisazero-originnumberandthuswillbeanon-negative���Ó
ÍÔc8Ó
ÍÔb6qÓ¡ÓòÓ
oÓFÓÓÙÓÀÓ¢ÓyÓPÓ'Ó˛Ó’Ó¨ÓÉÓZÓ1ÓÓflÓ∂ÓçÓdÓ;ÓÓÈÓ#E�Ó$ÛÓ'xÓ)˝�Ó+´Ó.6Ôb6Ó
ÍÔ`fiÓ¡ÓòÓ
oÓFÓÓÙÓÀÓ¢ÓyÓPÓ'Ó˛Ó’Ó¨ÓÉÓZÓ1ÓÓflÓ∂ÓçÓdÓ;ÓÓÈÓ#E�Ó$ÛÓ'xÓ)˝�Ó+´Ó0ªÔ`fiÓ
ÍÔ_ÜÓ¡ÓòÓ
oÓF	ÓÉÓfl�ÓçÓÓ-YÓ/
Ô_ÜÓ
ÍÔ^.Ó¡ÓòÓ
oÓFÓP�Ó˛	Ó;Ó!óÓ,ÇÓ2cÓ3:Ó3@Ô^.Ó
ÍÔ\÷Ó¡ÓòÓ
oÓFÓP�Ó˛	Ó;ÓÓÈ�Ó!óÓ,ÇÓ1åÓ1íÔ\÷Ó
ÍÔ[~Ó¡ÓòÓ
oÓFÓÓÙÓÀÓ¢ÓyÓPÓ'Ó˛Ó’Ó¨ÓÉÓZÓ1ÓÓflÓ∂ÓçÓdÓ;ÓÓÈÓ ¿Ó!óÓ,ÇÓ-Y�Ó/Ó/
Ô[~Ó
ÍÔZ&Ó¡ÓòÓ
oÓFÓÓÙÓÀÓ¢ÓyÓPÓ'Ó˛Ó’Ó¨ÓÉÓZÓ1ÓÓflÓ∂ÓçÓdÓ;ÓÓÈÓ ¿Ó!óÓ4Ó6úÔZ&Ó
ÍÔXŒÓ¡ÓòÓ
oÓFÓy�Ó'ÓÉ�Ó1Ó;Ó#EÓ'xÓ/Ó2cÓ8DÓ>¸ÓAÅÓDÓH9ÓH?ÔXŒÓ
ÍÔWvÓ¡ÓòÓ
oÓFÓÓÙÓ˛ÓÉÓÓdÓ!óÓ)&Ó+´
Ó5øÓ9Ó=NÓAÅÓH9ÓJæÓJƒÔWvÓ
ÍÔVÓ¡ÓòÓ
oÓFÓÓÙÓ¨Ó1Ó∂Ó;ÓÓÈÓ$Ó(OÓ/Ó3:Ó>¸ÓAÅÓE¥ÓH9ÓH?ÔVÓ
ÍÔT∆Ó¡ÓòÓ
oÓFÓÓÙ	Ó1Ó∂ÓÈÓ"nÓ% Ó*‘Ó1åÓ4Ó8DÓ=NÓ>%Ó>+ÔT∆Ó
ÍÔSnÓ
ÔSnÓ
ÍÔR
ÓÉÓçÓÈÓ-YÓ4Ó8DÓE¥ÓIÓIÔRÓ
ÍÔPæÓ¢Ó¨Ó1Ó$Ó)˝Ó0µÓ6ñÓ<wÓ>¸ÓGbÓGbÔPæÓ
ÍÔOfÓ˙ÔOfÓ
ÍÔN�ÓòÓ¢Ó'ÓÉ	Ó ¿Ó#EÓ&°Ó.0Ó5øÓ8DÓ>¸ÓBXÓE¥ÓH?ÔNÓ
ÍÔL∂ÓÓ'ÓçÓÈÓ&°Ó-YÓ1åÓ6ñÓ9Ó>%ÓBX�ÓDÓFãÓIÔL∂Ó
ÍÔK^ÓÀÓ¢Ó¨ÓdÓ% Ó+´Ó.0Ó6ñÓ<wÓ?”ÓD›ÓH9ÓJæÓJƒÔK^Ó
ÍÔJÓPÓ1Ó∂ÓÓ-YÓ/fiÓ3:Ó;†ÓBXÓD›ÓIÔJÓ
ÍÔHÆÓFÓPÓ¨�ÓZ
Ó"nÓ$ÛÓ(O
Ó4ËÓ:…
ÓDÔHÆÓ
ÍÔGVÓ
ÔGVÓ
ÍÔE˛Ó
ÔE˛Ó
ÍÔD¶Ó
ÔD¶Ó
ÍÔCNÓ
ÔCNÓ
ÍÔAˆÓ¡ÓòÓ
oÓFÓÓÙÓÀÓ¢ÓyÓPÓ'Ó˛Ó’Ó¨ÓÓ"nÓ)˝Ó-YÓ4ËÓ7mÓ9ÚÓ>+ÔAˆÓ
ÍÔ@ûÓ
Ô@ûÓ
ÍÔ?FÓFÓyÓflÓdÓ#EÓ&°Ó.0Ó0µÓ3:Ó8DÓ:…Ó@™ÓDÔ?FÓ
ÍÔ=ÓÓÓ˛ÓdÓÈ	Ó(UÔ=ÓÓ
ÍÔ<ñÓ
Ô<ñÓ
ÍÔ;>ÓÙÓ¨ÓÓ$ÛÓ(O�Ó),Ô;>Ó
ÍÔ9ÊÓ¡ÓòÓ
oÓFÓyÓ1ÓçÓ#EÓ% Ó,ÇÓ4ËÓ7mÓ:…	ÓDÓIÁÓIÌÔ9ÊÓ
ÍÔ8éÓFÓ¢Ó˛ÓdÓ% Ó*‘Ó3:Ó6ñÓ:…ÓC/ÓGbÓIÁÓIÌÔ8éÓ
ÍÔ76�ÓòÓÉÓ;Ó"nÓ&°Ó)˝Ó5øÓ:…	ÓC5Ô76Ó
ÍÔ5fiÓ
Ô5fiÓ
ÍÔ4ÜÓÓPÓ∂Ó;Ó$Ó'xÓ/Ó1åÓ4Ó9Ó;†ÓAÅÓE¥ÓFãÓIÌÔ4ÜÓ
ÍÔ3.Ó¡Ó¢Ó˛ÓÓç	Ó% Ó,ÇÓ1åÓ4ËÓ8DÓ<wÓC/ÓGhÔ3.Ó
ÍÔ1÷Ó¡
Ó’ÓÓ;Ó$ÛÓ'xÓ)˝Ó,ÇÓ4ËÓ9Ó<wÓ@™ÓD›ÓH?Ô1÷Ó
ÍÔ0~Ó¡ÓÙÓ˛Ó1Ó ¿Ó$ÛÓ-YÓ2cÓ6ñÓ9ÚÓ>%ÓBXÓFãÓJæÓJƒÔ0~Ó
ÍÔ/&Ó¡ÓÀÓ'Ó¨�ÓZÓ$	Ó-YÓ9¯Ô/&Ó
ÍÔ-ŒÓ¡ÓòÓ
oÓFÓP	ÓçÓ#EÓ&°Ó1åÓ4Ë�Ó5≈Ô-ŒÓ
ÍÔ,vÓ¡ÓyÓ’ÓdÓÈÓ#EÓ)˝Ó,ÇÓ3:Ó:…Ó=NÓ=TÔ,vÓ
ÍÔ+Ó¡ÓòÓ
oÓFÓPÓÓdÓ(OÓ+´�Ó,àÔ+Ó
ÍÔ)∆Ó¡ÓFÓÀÓÂÔ)∆Ó
ÍÔ(nÓ
Ô(nÓ
ÍÔ'Ó’ÓÓdÓ$Ó+´Ó0µÓ4Ó7mÓ=N	ÓFãÓFëÔ'Ó
ÍÔ%æÓyÓ’Ó∂Ó;Ó&°Ó)&Ó,ÇÓ0µ	Ó9ÚÓ>¸ÓDÓFãÓFëÔ%æÓ
ÍÔ$fÓÀ	ÓÓd�ÓÓ#EÓ)&Ó-YÓ0µÓ4
Ó>%ÓDÓH?Ô$fÓ
ÍÔ#Ó
oÓÙ	Ó1Ó;Ó ¿Ó#E	Ó,ÇÓ1åÓ4ËÓ9ÚÓ=NÓ?”ÓBXÓIÔ#Ó
ÍÔ!∂Ó
oÓÙÓ˛	ÓjÔ!∂Ó
ÍÔ ^Ó
Ô ^Ó
ÍÔÓ
ÔÓ
ÍÔÆÓ¡ÓòÓ
oÓFÓÓÙÓÀÓ¢ÓyÓPÓ'Ó˛Ó’Ó¨ÓÉÓZÓ1ÓÓflÓ∂Ó'xÓ/
ÔÆÓ
ÍÔVÓ
ÔVÓ
ÍÔ˛ÓÓ ∆Ô˛Ó
ÍÔ¶Ó¡ÓòÓ
oÓFÓ˛�Ó¨ÓflÓ#EÓ&°Ó)˝Ó-YÓ/fiÓ6ñÓ:…Ó>%Ó@™ÓFãÓIÓIÔ¶Ó
ÍÔNÓyÓPÓÉÓflÓ;Ó ¿Ó&°Ó*‘Ó.0Ó1åÓ9ÚÓ>%ÓD›ÓH9ÓH?ÔNÓ
ÍÔˆÓyÓ¨ÓÓÔˆÓ
ÍÔûÓ¡ÓòÓ
oÓFÓd	Ó&°�Ó(OÓ3:Ó8DÓ;¶ÔûÓ
ÍÔFÓÙÓyÓ¨ÓÓçÓ!óÓ$Ó(OÓ-YÓ2cÓ4ËÓ9Ó?ŸÔFÓ
ÍÔÓÓÓ¢	ÓflÓÓ"nÓ'x	Ó0µÓ5øÓ:…ÓC/ÓFãÓFëÔÓÓ
ÍÔñ	Ó'Ó1Ó∂Ó;Ó&°Ó.0Ó0µÓ5øÓ8DÓ<w�Ó>%
ÓJæÓJƒÔñÓ
ÍÔ>ÓÙÓ˛Ó1ÓçÓ$Ó&°Ó*‘
Ó7mÓ<wÓ=NÓD›ÓH?Ô>Ó
ÍÔÊÓÓy
ÓçÓ#EÓ*‘Ó/Ó1åÓ4ËÓ8DÓ?”ÓC5ÔÊÓ
ÍÔ
éÓ
Ô
éÓ
ÍÔ6	Ó'ÓÂÔ6Ó
ÍÔ
fiÓ¡ÓòÓ
oÓFÓ˛ÓZÓ;Ó ¿	Ó)˝Ó/fiÓ2cÓ9ÚÓ<wÓDÓFëÔ
fiÓ
ÍÔ	ÜÓyÓZÓçÓ�Ó ¿
Ó*‘Ó0µÓ4Ó8DÓ<wÓ>¸�Ó@™Ó@™Ô	ÜÓ
ÍÔ.Ó’Ó€Ô.�������	Õ����
Íq?Ä[«á��������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������integer.(ARRAYDIMENSION<array><axis-number>)Returnsthelengthofdimensionnumber<axis-number>of<array>[whichmaybeanykindofarray,i.e.,anyinstanceofthe\CMLARRAYdatatype];<axis-number>shouldbeanon-negativeintegerlessthantherankof<array>.(ARRAYDIMENSIONS<array><optionslst>)Returnsalistwhoseelementsarethedimensionsof<array>.[Thesecondargument,<optionslst>,isnotaCommonLispargument--itisprovidedinInterlispsothatonemayspecifytheNOCOPYoption.Defaultactionistoreturnacopyoftheinternaldimensionslist.](ARRAYTOTALSIZE<array><in-bits-p>)Returnsthetotalnumberofelementsin<array>,calculatedastheproductofallthedimensions.Roughlyequivalentto(APPLY'TIMES(ARRAYDIMENSIONS<array>))Notethatthetotalsizeofazero-dimensionalarrayis1.[Thesecondargument,<in-bits-p>,isnotaCommonLispargument--itisprovidedinInterlispinordertofindouthowmuchspaceisactuallyoccupiedbythearray,includinganygapscausedbytheALIGNMENToption.](ARRAYINBOUNDSP<array>...{subscripts}...)Thispredicatecheckswhetherthesubscriptsarealllegalsubscriptsfor<array>andistrueiftheyare;otherwiseitisfalse.Thesubscriptsmustbeintegers.Thenumberofsubscriptssuppliedmustequaltherankofthearray.E.g.,ifHAisathree-dimensionalarray,then(ARRAYINBOUNDSPHA42562)makesthechecksuchthat(AREFHA42562)willnotcauseanillegalsubscripterror.(ARRAYROWMAJORINDEX<array>...{subscripts}...)Thisfunctiontakesanarrayandvalidsubscriptsforthearray,andreturnsasinglenon-negativeintegerlessthanthetotalsizeofthearraythatidentifiestheaccessedelementintherow-majororderingoftheelements.Thenumberofsubscriptssuppliedmustequaltherankofthearry.Eachsubscriptmustbeanon-negativeintegerlessthanthecorrespondingarraydimension.Foraone-dimensionalarray,theresultofthisfunctionalwaysequalsthesuppliedsubscript.[However,iftheALIGNMENToptionisusedforamulti-dimensionalarrayinInterlisp-D,thenthemaximumlinearizedindexwillexceedthevaluereturnedbyARRAYTOTALSIZE.Insuchacase,thevaluereturnedby(ARRAYTOTALSIZE<array>T)willbethefieldsizeperelementtimesoneplusthemaximumlinearizedindex.Thequantity(fetch(CMLARRAYCMLIMAX)of<array>)willalwaysbethismaximumlinearizedindex.]ChangingtheDimensionsofanArray(ADJUSTARRAY<array><dimensionslst>)Takesanarray,andalistofdimensionsjustaswithMAKEARRAY;thenumberofdimensionsspecifiedby<dimensionslst>mustequaltherankof<array>.Returns<array>,whosecomponentshavebeenupdatedtoconformtothenewspecifications(butifthenewdimensionsrequiremorespaceintheblockdataarea,thiswillcauseacopyingintoanewlyallocatedblock,and<array>willbeDISPLACEDTOtothisnewblock.)[[NoneofthekeywordoptionsmentionedintheCommonLispmanualaresupported���Ó
ÍÔc8Ó
ÍÔb6qÓ®Ôb6Ó
ÍÔ`fiÓ
Ô`fiÓ
ÍÔ_ÜÓZÓ
Ó*⁄Ô_ÜÓ
ÍÔ^.Ó¡ÓòÓ
oÓFÓ˛ÓZÓ;Ó ¿Ó)&Ó/Ó:…Ó=NÓDÓIÔ^.Ó
ÍÔ\÷ÓFÓÀÓ'ÓZÓflÓ ¿Ó% Ó)&Ó0µÓ3:Ó6ñÓ>¸	ÓGhÔ\÷Ó
ÍÔ[~Ó¨ÓçÓ�Ó ¿Ó+´Ó2cÓ6ñÓ:…Ó>%ÓBXÓD›ÓD›Ô[~Ó
ÍÔZ&ÓyÓÔZ&Ó
ÍÔXŒÓ
ÔXŒÓ
ÍÔWvÓ1ÓÈÓ*⁄ÔWvÓ
ÍÔVÓ¡ÓòÓ
oÓFÓ˛�Ó¨ÓflÓÈÓ'xÓ*‘Ó.0	Ó7mÓ9ÚÓAÅÓBXÓC/ÓFëÔVÓ
ÍÔT∆ÓÀÓ1Ó$ÛÓ'xÓ*‘�Ó,Ç	Ó5øÓ=NÓ?”ÓBXÓD›ÓD›ÔT∆Ó
ÍÔSnÓyÓÔSnÓ
ÍÔRÓ
oÓ’ÓZÓçÓÈÓ#EÓ)˝Ó-YÓ3:Ó9ÚÓ:…ÓAÅÓGbÓIÁÓIÌÔRÓ
ÍÔPæÓ
oÓP�Ó˛Ó1Ó∂ÓÓ&°	Ó/fiÓ4ÓÔPæÓ
ÍÔOfÓ
ÔOfÓ
ÍÔNÓZÓÓ),ÔNÓ
ÍÔL∂Ó¡ÓòÓ
oÓFÓ˛ÓZÓdÓ#EÓ% Ó-YÓ/fiÓ7m	Ó@™ÓC/ÓFãÓFãÔL∂Ó
ÍÔK^Ó—ÔK^Ó
ÍÔJÓ
oÓÀÓ'
Ó;ÓÓ% 	Ó/Ó1åÓ1íÔJÓ
ÍÔHÆÓ¡ÓòÓ
oÓFÓ'ÓÓ(OÓ/‰ÔHÆÓ
ÍÔGVÓÓPÓ¨Ó∂ÓÈÓ"n�Ó$Ó2cÓ7mÓ9ÚÓ<wÓ=NÓAÅÓGbÓGhÔGVÓ
ÍÔE˛ÓPÓ;Ó ¿Ó$�Ó% 	Ó/Ó6ñÓ9Ó;†Ó>%ÓE¥ÓGhÔE˛Ó
ÍÔD¶ÓPÓ’ÓflÓdÓ!óÓ$ÛÓ(OÓ,ÇÓ1åÓ4Ó;†ÓC/ÓE¥ÓH?ÔD¶Ó
ÍÔCNÓÀÓ1ÓçÓ ¿Ó&°Ó)&Ó,ÇÓ4ËÓ;¶ÔCNÓ
ÍÔAˆÓ
ÔAˆÓ
ÍÔ@ûÓZÓÓ"nÓ-YÓ0µ�Ó1íÔ@ûÓ
ÍÔ?FÓ¡ÓòÓ
oÓFÓyÓflÓ ¿Ó'xÓ*‘	Ó4Ó7mÓ:…Ó?”	ÓIÓIÔ?FÓ
ÍÔ=ÓÓFÓ˛ÓZÓflÓÓ!óÓ% Ó)˝Ó*‘Ó3:Ó5øÓ8DÓ>%Ó>¸ÓBXÓBXÔ=ÓÓ
ÍÔ<ñ	Ó'Ó-Ô<ñÓ
ÍÔ;>ÓÓ¢ÓÓflÓ;Ó$Ó&°	Ó/fiÓ7mÓ;†Ó@™ÓDÓH9ÓJæÓJƒÔ;>Ó
ÍÔ9ÊÓFÓ'Ó˛Ó’ÓflÓdÓÈÓ"n�Ó$Ó3:Ó9Ó=NÓ=TÔ9ÊÓ
ÍÔ8éÓ¡ÓòÓ
oÓFÓ∂Ó;�ÓÈÓ"nÓ% Ó%–Ô8éÓ
ÍÔ76ÓÙÓPÓZÓçÓ ¿Ó% Ó(O�Ó)˝Ó,ÇÓ/fiÓ4Ó7mÓ<wÓ>¸ÓE¥ÓE∫Ô76Ó
ÍÔ5fiÓPÓ`Ô5fiÓ
ÍÔ4ÜÓ
Ô4ÜÓ
ÍÔ3.Ó∂Ó"nÓ% Ó0µÓ4�Ó4ÓÔ3.Ó
ÍÔ1÷Ó¡ÓòÓ
oÓFÓyÓÓÓ!óÓ&°Ó)˝Ó/	Ó8DÓ;†Ó>¸ÓD›ÓGhÔ1÷Ó
ÍÔ0~Ó¢�ÓPÓ1Ó$Ó*‘Ó/Ó3:Ó6ñÓ;†Ó?”ÓBXÓE¥ÓJæÓJƒÔ0~Ó
ÍÔ/&Ó	ÓZÓ∂Ó#EÓ)˝Ó,ÇÓ/fiÓ8DÓ?”ÓBXÓE¥ÓE¥Ô/&Ó
ÍÔ-ŒÓÔ-ŒÓ
ÍÔ,vÓFÓ'Ó¨	ÓÈÓ'xÓ+´Ó0µÓ4Ó8DÓ:…Ó>%ÓC/ÓDÓGhÔ,vÓ
ÍÔ+ÓPÓÉÓ�Ó∂Ó&°Ó-YÓ1åÓ5øÓ9ÓD›ÓIÔ+Ó
ÍÔ)∆	Ó'Ó˛ÓZ�ÓÓ'xÓ-YÓ0µÓ6ñÓ9Ó=NÓD›ÓIÌÔ)∆Ó
ÍÔ(nÓÀÓ'Ó∂	Ó$ÛÓ% Ó.0Ó0µÓ4Ó<wÓBXÓD›ÓIÓIÔ(nÓ
ÍÔ'Ó
uÔ'Ó
ÍÔ%æ�ÓòÓ∂Ó ¿Ó#EÓ.0Ó2cÓ5øÓ<w	ÓE¥ÓJæÓJƒÔ%æÓ
ÍÔ$fÓÓ˛ÓZÓdÓ$ÛÓ'xÓ4ËÓ5øÓ8DÓ<w�Ó>%ÓC/ÓFãÓFãÔ$fÓ
ÍÔ#Ó#Ô#Ó
ÍÔ!∂ÓyÓ˛Ó"nÓ)&Ó+´Ó/fiÓ2cÓ5øÓ:…Ó>¸ÓBXÓH?Ô!∂Ó
ÍÔ ^ÓÙÓPÓÉÓflÓ!ó	Ó*‘Ó0µÓ1åÓ2cÓ5øÓ<}Ô ^Ó
ÍÔÓ¡ÓòÓ
oÓFÓ'ÓçÓ$Ó&°Ó-_ÔÓ
ÍÔÆÓÓ˛ÓÉÓ∂Ó"n	Ó+´Ó2cÓ3:Ó3@ÔÆÓ
ÍÔVÓ
ÔVÓ
ÍÔ˛Ó
Ô˛Ó
ÍÔ¶Ó
Ô¶Ó
ÍÔNÓ
ÔNÓ
ÍÔˆÓ¡ÓòÓ
oÓFÓÓÙÓÀÓ¢ÓyÓPÓflÓ;	Ó'xÓ)˝Ó,ÇÓ0ªÔˆÓ
ÍÔûÓ
ÔûÓ
ÍÔFÓ’ÓçÓ*ÔFÓ
ÍÔÓÓ¡ÓòÓ
oÓFÓPÓ’Ó∂Ó�Ó ¿Ó$ÛÓ'x	Ó0µÓ4ËÓ7mÓ;†	ÓD›ÓGhÔÓÓ
ÍÔñÓÀÓP	ÓçÓ$ÛÓ'xÓ4ËÓ9Ó>%ÓAÅÓE¥ÓGhÔñÓ
ÍÔ>ÓyÓPÓÓ!óÓ&°	Ó/fiÓ4Ó8DÓ>¸ÓAÅÓGhÔ>Ó
ÍÔÊÓ
oÓÀÓ'
Ó ¿Ó$ÛÓ'xÓ*‘Ó.0	Ó7mÓ>%ÓBXÓGbÓIÔÊÓ
ÍÔ
éÓFÓPÓÉÓçÓdÓ!óÓ% Ó*‘�Ó,ÇÓ3:Ó7m�Ó9Ó>%ÓFãÓFãÔ
éÓ
ÍÔ6Ó˙Ô6Ó
ÍÔ
fiÓFÓ˛Ó1Ó∂
Ó% Ó(OÓ,ÇÓ/fiÓ5≈Ô
fiÓ
ÍÔ	ÜÓÀÓPÓ¨ÓdÓ$Ó,ÇÓ/Ó2c	Ó;†ÓAÅÓD›ÓD›Ô	ÜÓ
ÍÔ.ÓÔ.ˇ�������	Á����
Íq?Ä[«á������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������asof28-Sep-83.]]ExtensionstotheInterlispCommonLispArrayFunctionsAlthoughthefollowingfacilitiesaren'tspecifiedbythe"ExcelsiorEdition",theymaybequiteusefulinInterlisp-Dsystemsprogramming:*)Filepkgcom:CMLARRAYSissimilartotheBITMAPScom--namely(CMLARRAYS<var1><var2><var3>...)willsaveandrestorethevalueofeachglobalvariable<vari>,assumingitholdsaCMLARRAY.*)AdditionalELEMENTTYPEvaluesforMAKEARRAY:-XPOINTERislikePOINTER,exceptthattheentriesaren'treferencecountedforthegarbagecollector;beware,beware!-DISPLACEDTOBASEislikeDISPLACEDTOexceptitsvalueisjustarandompointer/address,ratherthananotherCMLARRAY.Thisway,onecanusetheCommonLisparrayfunctionstoaccesspartsofInterlisp-D'smemorysuchasthescreenbitmap.-ALIGNMENTisformulti-dimensionalarrays;eachrowmayberequiredtobeginamultipleofsomeinteger,withnullsorzerosfillinganyspacebetween"rows".Forexample,itmightbethatabitmaparraymusthavetherasterscansbeginningonawordboundary;sincethereare16bits/word,thenanalignmentof16wouldbeused.*)FunctionsInterfaceingtoLISTPs:(LISTARRAY<array><startindex><endindex>)Thesecondandthirdargumentsareoptional,andhavemeaningsimilartothecorrespondingargumentstoSUBSTRING,butnegativeindiciesaren'tallowed.Elementsareselectedfromthe<array>inrow-majororder,andCONS'supintoalist.(FILLARRAY<array><list><startindex><endindex>)SimilartoLISTARRAY,exceptthattheelementsofthe<list>arestoredintothecorrespondingpartsofthe<array>.Asaconvenience,if<list>isn'taLISTP,thenitisconvertedinto(LIST<list>);furthermore,iftherearen'tenoughelementsin<list>tofillouttherangespecifiedby<startindex>and<no.of.elements>,thenthelastelementof<list>isrepeateduntilfinished.Thus,forexample,onecouldfillanarraywithasinglevaluebyaconstructlike(FILLARRAYSOMEARRAY(LISTTHISVAL))*)"Fast"accessingfunctions:(PAREF<array>...{subscripts}...)(NAREF<array>...{subscripts}...)(LAREF<array>...{subscripts}...)(16AREF<array>...{subscripts}...)(8AREF<array>...{subscripts}...)(4AREF<array>...{subscripts}...)(1AREF<array>...{subscripts}...)TheseareessentiallythesameasAREF,buthaveaconsequencethat,forPAREF,<array>mustbeaPOINTERorTarray;andcorrespondingly,forNAREFaFIXNUMarray,forLAREFaFLONUMarray,for16AREFaDOUBLEBYTEor(MOD65536)array,for8AREFaBYTEor(MOD256)��Ó
ÍÔc8Ó
ÍÔb6qÓ
oÓÙÓÔb6Ó
ÍÔ`fiÓ
Ô`fiÓ
ÍÔ_ÜÓ
Ô_ÜÓ
ÍÔ^.Ó
Ô^.Ó
ÍÔ\÷Ó¡ÓòÓ
oÓFÓÓÙ	Ó1Ó∂ÓÓ'x	Ó0µÓ5øÓ=TÔ\÷Ó
ÍÔ[~Ó
Ô[~Ó
ÍÔZ&ÓyÓ’Ó;	Ó'xÓ-YÓ5øÓ8DÓ;†	ÓD›ÓD›ÔZ&Ó
ÍÔXŒÓÔXŒÓ
ÍÔWvÓÓyÓ˛ÓÓÈÓ"n
Ó,ÇÓ3:Ó=TÔWvÓ
ÍÔVÓ
ÔVÓ
ÍÔT∆Ó¡ÓFÓ˛Ó1ÓÓ"nÓ#EÓ% Ó,ÇÓ/Ó2cÓ9Ó<wÓ>¸ÓDÔT∆Ó
ÍÔSnÓ¡ÓòÓ
oÓFÓÓÙ	Ó1ÓÓ$ÛÓ*‘�Ó,Ç�Ó.0�Ó/fi�Ó0ªÔSnÓ
ÍÔRÓ¡ÓòÓ
oÓFÓyÓ¨ÓÓ ¿Ó$Ó)&Ó+´Ó/fiÓ5øÓ=NÓDÓDÔRÓ
ÍÔPæÓ®ÔPæÓ
ÍÔOfÓ¡ÓòÓ
oÓFÓÀÓ’�ÓÉÓÔOfÓ
ÍÔNÓ
ÔNÓ
ÍÔL∂Ó¡ÓF	ÓÉ
Ó!óÓ'xÓ*‘	Ó3@ÔL∂Ó
ÍÔK^Ó¡ÓòÓ
oÓFÓÓÙÓÀÓ¢�ÓPÓ'Ó∂Ó;Ó"nÓ)˝Ó/fiÓ4Ó7mÓ>%ÓDÓDÔK^Ó
ÍÔJÓÔJÓ
ÍÔHÆÓ¡ÓòÓ
oÓFÓÓÙÓÀÓ¢ÓyÓPÓ'Ó˛Ó’ÓçÓÈÓ#EÓ)˝	Ó3:Ó4Ó:…Ó@∞ÔHÆÓ
ÍÔGVÓ¡ÓòÓ
oÓFÓÓÙÓÀÓ¢�ÓPÓ'Ó!óÓ$Ó(O
Ó2cÓ8DÓ;†Ó@™ÓB^ÔGVÓ
ÍÔE˛Ó¡ÓòÓ
oÓFÓÓÙÓÀÓ¢ÓyÓPÓ'Ó˛Ó’Ó�Ó∂Ó!óÓ/fiÓ5øÓ9ÚÓ@™ÓH?ÔE˛Ó
ÍÔD¶Ó¡ÓòÓ
oÓFÓÓÙÓÀÓ¢ÓyÓPÓ'Ó˛Ó’ÓÓ;Ó!óÓ$ÛÓ(OÓ+´	Ó4ËÓ9ÚÓBXÓD›ÓIÌÔD¶Ó
ÍÔCNÓ¡ÓòÓ
oÓFÓÓÙÓÀÓ¢ÓyÓPÓ'Ó˛Ó’ÓflÓdÓ)&Ó/Ó3:Ó5øÓ9Ó>¸ÓD„ÔCNÓ
ÍÔAˆÓ¡ÓòÓ
oÓFÓÓÙÓÀÓ¢�ÓPÓ'ÓçÓÓ"nÓ1åÓ8DÓ9Ó=NÓ@™ÓDÓFãÓFëÔAˆÓ
ÍÔ@ûÓ¡ÓòÓ
oÓFÓÓÙÓÀÓ¢ÓyÓPÓ'Ó˛Ó’ÓdÓÈÓ$Û�Ó&°Ó.0Ó0µÓ4ËÓ<wÓ@™ÓE¥ÓH9ÓH9Ô@ûÓ
ÍÔ?FÓ#Ô?FÓ
ÍÔ=ÓÓ¡ÓòÓ
oÓFÓÓÙÓÀÓ¢ÓyÓPÓ'Ó˛Ó’ÓçÓÈÓ$ÛÓ+´Ó2cÓ3:Ó6ñÓ>%Ó@™ÓE¥ÓH9ÓH9Ô=ÓÓ
ÍÔ<ñÓÓ#Ô<ñÓ
ÍÔ;>Ó¡ÓòÓ
oÓFÓÓÙÓÀÓ¢ÓyÓPÓ'Ó˛Ó’�ÓÉÓdÓ"nÓ&°Ó*‘Ó.0Ó4Ó9ÓAÅÓD�ÓE¥ÓIÔ;>Ó
ÍÔ9ÊÓ¡ÓòÓ
oÓFÓÓÙÓÀÓ¢ÓyÓPÓ'Ó˛Ó’Ó;ÓÓ$Ó)&Ó,ÇÓ/	Ó8DÓ<wÓ>¸ÓGbÓIÁÓIÁÔ9ÊÓ
ÍÔ8éÓûÔ8éÓ
ÍÔ76Ó¡ÓòÓ
oÓFÓÓÙÓÀÓ¢ÓyÓPÓ'Ó˛Ó’ÓflÓdÓ!ùÔ76Ó
ÍÔ5fiÓ
Ô5fiÓ
ÍÔ4ÜÓ¡ÓFÓ¨Ó!óÓ$Ó*Ô4ÜÓ
ÍÔ3.Ó¡ÓòÓ
oÓFÓÓÙ	Ó1ÓÈÓ*‘
Ó4Ô3.Ó
ÍÔ1÷Ó¡ÓòÓ
oÓFÓÓÙÓÀÓ¢Ó˛ÓflÓ;Ó#EÓ+´Ó/Ó7mÓ:…Ó>¸ÓE¥ÓE¥Ô1÷Ó
ÍÔ0~Ó¢Ó®Ô0~Ó
ÍÔ/&Ó¡ÓòÓ
oÓFÓÓÙÓÀÓ¢Ó'ÓÉÓ#EÓ+´Ó.0	Ó7mÓ:…ÓBXÓIÔ/&Ó
ÍÔ-ŒÓ¡ÓòÓ
oÓFÓÓÙÓÀÓ¢ÓÉÓÓÈÓ'xÓ*‘Ó2cÓ6ñÓ9ÚÓ@™ÓC/ÓC/Ô-ŒÓ
ÍÔ,vÓÔ,vÓ
ÍÔ+Ó¡ÓòÓ
oÓFÓÓÙÓÀÓ¢ÓÉÓflÓ ¿Ó#EÓ'x�Ó)&Ó-_Ô+Ó
ÍÔ)∆Ó¡ÓòÓ
oÓFÓÓÙ	Ó1ÓÈÓ% Ó0µ
Ó9¯Ô)∆Ó
ÍÔ(nÓ¡ÓòÓ
oÓFÓÓÙÓÀÓ¢ÓZÓfl	Ó$Ó)˝Ó.0Ó1åÓ9Ó;†Ó>¸ÓD›ÓH9ÓH?Ô(nÓ
ÍÔ'Ó¡ÓòÓ
oÓFÓÓÙÓÀÓ¢ÓÉÓ∂ÓÓ*‘Ó/fiÓ2cÓ5øÓ=NÓ>%Ó@™�ÓBXÓBXÔ'Ó
ÍÔ%æÓÔ%æÓ
ÍÔ$fÓ¡ÓòÓ
oÓFÓÓÙÓÀÓ¢Ó'ÓÓ�Ó ¿Ó&°Ó*‘Ó-YÓ/fiÓ8DÓ<wÓAÅÓIÓIÔ$fÓ
ÍÔ#Ó¡ÓòÓ
oÓFÓÓÙÓÀÓ¢ÓçÓÓ$Ó)˝Ó/fiÓ7mÓ9ÚÓ?”ÓBXÓFãÓIÁÓIÁÔ#Ó
ÍÔ!∂Ó
uÔ!∂Ó
ÍÔ ^Ó¡ÓòÓ
oÓFÓÓÙÓÀÓ¢Ó¨ÓÓ!óÓ,ÇÓ/fiÓ>¸ÓC/ÓFãÓJæÓJƒÔ ^Ó
ÍÔÓ¡ÓòÓ
oÓFÓÓÙÓÀÓ¢ÓZÓflÓ ¿Ó#EÓ*‘Ó/fiÓ8DÓ9Ó>%ÓAÅÓIÓIÔÓ
ÍÔÆÓFÓLÔÆÓ
ÍÔVÓ¡ÓòÓ
oÓFÓÓÙÓÀÓ¢Ó¨ÓflÓdÓ"nÓ&°�Ó(OÓ.0Ó3:Ó5ø�Ó7mÓ?”ÓDÓDÔVÓ
ÍÔ˛Ó¡ÓòÓ
oÓFÓÓÙÓÀÓ¢ÓyÓPÓ'Ó˛	Ó;Ó&°Ó+´Ó3@Ô˛Ó
ÍÔ¶Ó
Ô¶Ó
ÍÔNÓ¡ÓFÓ'Óç	Ó$˘ÔNÓ
ÍÔˆÓ¡ÓòÓ
oÓFÓ'Ó˛Ó∂ÓÓ)˝Ó-Y�Ó.6ÔˆÓ
ÍÔûÓ¡ÓòÓ
oÓFÓ'Ó˛Ó∂ÓÓ)˝Ó-Y�Ó.6ÔûÓ
ÍÔFÓ¡ÓòÓ
oÓFÓ'Ó˛Ó∂ÓÓ)˝Ó-Y�Ó.6ÔFÓ
ÍÔÓÓ¡ÓòÓ
oÓFÓ˛Ó∂ÓÓ)˝Ó-Y�Ó.6ÔÓÓ
ÍÔñÓ¡ÓòÓ
oÓFÓ'Ó˛Ó∂ÓÓ)˝Ó-Y�Ó.6ÔñÓ
ÍÔ>Ó¡ÓòÓ
oÓFÓ'Ó˛Ó∂ÓÓ)˝Ó-Y�Ó.6Ô>Ó
ÍÔÊÓ¡ÓòÓ
oÓFÓ'Ó˛Ó∂ÓÓ)˝Ó-Y�Ó.6ÔÊÓ
ÍÔ
éÓ¡ÓòÓ
oÓFÓPÓ¨
Ó ¿Ó$Ó(OÓ*‘Ó/fiÓ3:Ó7m�Ó9Ó9Ú
ÓDÓIÓIÔ
éÓ
ÍÔ6Ó
uÔ6Ó
ÍÔ
fiÓ¡ÓòÓ
oÓFÓÓÙÓ’ÓçÓ ¿Ó#E�Ó$ÛÓ+´Ó.0�Ó/fiÓ5øÓ9ÓGbÓIÌÔ
fiÓ
ÍÔ	ÜÓ¡ÓòÓ
oÓFÓÓÙÓ˛�Ó¨ÓçÓ"nÓ#EÓ&°Ó+´�Ó-YÓ3:Ó9Ó<wÓBX�ÓC5Ô	ÜÓ
ÍÔ.Ó¡ÓòÓ
oÓFÓÓÙ	Ó1Ó∂ÓÈÓ% Ó+´Ó/Ó4�Ó5øÓ9ÚÓ<wÓ@™ÓDÔ.�������Ü����
Íq?Ä[«Æ����������������������������array,for4AREFaNIBBLEor(MOD16)array,andfor1AREFaBITor(MOD2)array.Furthermore,whencompiled,thesefunctionswillbecompiled"open",withlittleornoerrorchecking,realizingordersofmagnitudespeed-upoverAREF;however,***thereisnocertificationastowhatkindofvaluewillbereturnedshouldthesubscriptsbe"outofrange".Toaidindebugging,therun-timecodeactuallytogglesontheglobalvariableAREFSissyFLG,andwhentheflgisnon-NIL,willcallthefunctionAREFinsteadofthefast-but-unchecked"in-line"accessing.However,onemayomiteventhesesimplechecksfor"allout,noholdsbarred"codebyprefixinga\tothesenames(e.g.\PAREF...)*)"Fast"settingfunctions:(PASET<newvalue><array>...{subscripts}...)(NASET<newvalue><array>...{subscripts}...)(LASET<newvalue><array>...{subscripts}...)(16ASET<newvalue><array>...{subscripts}...)(8ASET<newvalue><array>...{subscripts}...)(4ASET<newvalue><array>...{subscripts}...)(1ASET<newvalue><array>...{subscripts}...)TheseareessentiallythesameasASET,buthaveaconsequencethat,forPASET,<array>mustbeaPOINTERorTarray;andcorrespondingly,forNASETaFIXNUMarray,forLAREFaFLONUMarray,for16ASETaDOUBLEBYTEor(MOD65536)array,for8ASETaBYTEor(MOD256)array,for4ASETaNIBBLEor(MOD16)array,andfor1ASETaBITor(MOD2)array.Furthermore,whencompiled,thesefunctionswillbecompiled"open",withlittleornoerrorchecking,realizingordersofmagnitudespeed-upoverASET;althoughsomecheckingisperformedtoinsurememorysystemintegrity(i.e.thatthewordmodifiedwillactuallybewithinthedatablockofthespecifiedarray),****thereisnocertificationastowhichwordwillbeclobberedshouldthesubscriptsbe"outofrange".AswithAREF,therun-timecodetogglesontheglobalvariableAREFSissyFLG,andwillcallthefunctionASETwhentheflgisnon-NIL.However,onemayomiteventhesesimplechecksfor"allout,noholdsbarred"codebyprefixinga\tothesenames(e.g.\PASET...).Ifyouusethisoption,thereisnoguaranteeofmemoryintegrity,andlikelynoonewillwanttolistentoreportsofany"system"bugsencounteredwhilesuch"unsafe"optionswerebeingexercised.��Ó
ÍÔc8Ó
ÍÔb6qÓ¡ÓòÓ
oÓFÓÓÙÓ’Ó¨ÓÓ�Ó ¿Ó&°Ó)&Ó-YÓ0µÓ6ñÓ9ÚÓ=NÓBX�ÓDÓGbÓIÔb6Ó
ÍÔ`fiÓ¡ÓòÓ
oÓFÓÓPÓ’Ó∂ÓçÓìÔ`fiÓ
ÍÔ_ÜÓ¡ÓòÓ
oÓFÓ1ÓdÓ% Ó*‘Ó3:Ó7mÓ9ÚÓAÅÓH9ÓH9Ô_ÜÓ
ÍÔ^.ÓÓ#Ô^.Ó
ÍÔ\÷Ó¡ÓòÓ
oÓFÓÓÙÓ’ÓZÓflÓÈÓ(OÓ0µÓ6ñÓ9ÓAÅÓIÓIÔ\÷Ó
ÍÔ[~ÓÓ#Ô[~Ó
ÍÔZ&Ó¡ÓòÓ
oÓFÓÓÙÓ˛Ó’ÓdÓ ¿Ó% Ó(OÓ*‘Ó6ñÓ9Ó;†Ó?”ÓDÓFãÓFãÔZ&Ó
ÍÔXŒÓ#ÔXŒÓ
ÍÔWvÓ¡ÓòÓ
oÓFÓÓÙÓ'Ó¨Ó;Ó$Ó'x	Ó0µÓ3:Ó7mÓ9ÚÓ@™ÓAÅÓBXÓD›ÓH9ÓIÌÔWvÓ
ÍÔVÓ¡ÓòÓ
oÓFÓÓÙ	Ó1ÓçÓ$Ó(OÓ/fiÓ6ñÓ9Ó<wÓBXÓIÔVÓ
ÍÔT∆Ó¡ÓòÓ
oÓFÓÓÙÓ∂ÓÓ#EÓ&°Ó)˝Ó,ÇÓ4Ó8DÓ<wÓ?”ÓGbÓGhÔT∆Ó
ÍÔSnÓ¡ÓòÓ
oÓFÓÓÙÓ'ÓflÓdÓ ¿Ó0µÓ9	ÓAáÔSnÓ
ÍÔRÓ¡ÓòÓ
oÓFÓ’Ó1ÓçÓ ¿Ó$ÛÓ)˝Ó/fiÓ5øÓ9Ó=NÓAÅÓDÓIÓIÔRÓ
ÍÔPæÓ¡ÓòÓ
oÓFÓÓÙÓ¨ÓflÓdÓ% �Ó'x�Ó)&Ó+´Ó0µÓ5øÓ:…Ó@™ÓDÔPæÓ
ÍÔOfÓ
ÔOfÓ
ÍÔNÓ¡ÓFÓÓ˛Ó’Óç	Ó$˘ÔNÓ
ÍÔL∂Ó¡ÓòÓ
oÓFÓ'Ó˛	Ó;Ó$ÛÓ(OÓ3:Ó6ñ�Ó7sÔL∂Ó
ÍÔK^Ó¡ÓòÓ
oÓFÓ'Ó˛	Ó;Ó$ÛÓ(OÓ3:Ó6ñ�Ó7sÔK^Ó
ÍÔJÓ¡ÓòÓ
oÓFÓ'Ó˛	Ó;Ó$ÛÓ(OÓ3:Ó6ñ�Ó7sÔJÓ
ÍÔHÆÓ¡ÓòÓ
oÓFÓ˛	Ó;Ó$ÛÓ(OÓ3:Ó6ñ�Ó7sÔHÆÓ
ÍÔGVÓ¡ÓòÓ
oÓFÓ'Ó˛	Ó;Ó$ÛÓ(OÓ3:Ó6ñ�Ó7sÔGVÓ
ÍÔE˛Ó¡ÓòÓ
oÓFÓ'Ó˛	Ó;Ó$ÛÓ(OÓ3:Ó6ñ�Ó7sÔE˛Ó
ÍÔD¶Ó¡ÓòÓ
oÓFÓ'Ó˛	Ó;Ó$ÛÓ(OÓ3:Ó6ñ�Ó7sÔD¶Ó
ÍÔCNÓ¡ÓòÓ
oÓFÓPÓ¨
Ó ¿Ó$Ó(OÓ*‘Ó/fiÓ3:Ó7m�Ó9
ÓC/ÓH9ÓH9ÔCNÓ
ÍÔAˆÓ
uÔAˆÓ
ÍÔ@ûÓ¡ÓòÓ
oÓFÓÓÙÓ’ÓçÓ ¿Ó#E�Ó$ÛÓ+´Ó.0�Ó/fiÓ5øÓ9ÓGbÓJæÓJƒÔ@ûÓ
ÍÔ?FÓ¡ÓòÓ
oÓFÓÓÙÓ˛�Ó¨ÓçÓ"nÓ% Ó*‘�Ó,ÇÓ2cÓ8DÓ;†ÓAÅ�ÓC/ÓC/Ô?FÓ
ÍÔ=Ó	Ó'Ó-Ô=ÓÓ
ÍÔ<ñÓ¡ÓòÓ
oÓFÓÓÙÓyÓ¨ÓçÓ"nÓ% Ó*‘�Ó,ÇÓ0µÓ3:Ó7mÓ;†ÓAÅÓD›ÓIÁÓIÁÔ<ñÓ
ÍÔ;>�ÓòÓûÔ;>Ó
ÍÔ9ÊÓ¡ÓòÓ
oÓFÓÓÙÓ’ÓZÓçÓÈÓ% Ó)&Ó,ÇÓ1å�Ó3:Ó6ñÓ9Ó=NÓ?”ÓE¥ÓFãÓFëÔ9ÊÓ
ÍÔ8éÓ¡ÓòÓ
oÓFÓ1ÓdÓ% Ó*‘Ó3:Ó7mÓ9ÚÓAÅÓH9ÓH9Ô8éÓ
ÍÔ76ÓÓ#Ô76Ó
ÍÔ5fiÓ¡ÓòÓ
oÓFÓÓÙÓ’ÓZÓflÓÈÓ(OÓ0µÓ6ñÓ9ÓAÅÓIÓIÔ5fiÓ
ÍÔ4ÜÓLÔ4ÜÓ
ÍÔ3.Ó¡ÓòÓ
oÓFÓÓÙÓ˛Ó’ÓdÓ!óÓ)&Ó+´Ó4Ó6ñÓ<wÓBXÓGhÔ3.Ó
ÍÔ1÷Ó¡ÓòÓ
oÓFÓÓÙÓZÓdÓ!óÓ$ÛÓ)&Ó0µÓ4ËÓ<wÓ>¸ÓD›ÓH9ÓH9Ô1÷Ó
ÍÔ0~ÓLÔ0~Ó
ÍÔ/&Ó¡ÓòÓ
oÓFÓÓÙÓ˛ÓÉÓflÓ#EÓ)˝Ó.0Ó3:Ó5øÓ8DÓDÓFãÓIÓIÔ/&Ó
ÍÔ-ŒÓ¡ÓòÓ
oÓFÓÓÙÓ˛Ó1ÓdÓÈÓ(OÓ.0Ó1å	Ó:…Ó=NÓAÅÓDÓJæÓKïÓKïÔ-ŒÓ
ÍÔ,vÓûÔ,vÓ
ÍÔ+Ó¡ÓòÓ
oÓFÓÓÙÓ'Ó1ÓçÓ$Ó(OÓ/Ó1åÓ4ËÓ:…ÓBXÓBXÔ+Ó
ÍÔ)∆Ó€Ô)∆Ó
ÍÔ(nÓ¡ÓòÓ
oÓFÓÓÙÓPÓÉÓ∂ÓÓ&°Ó*‘Ó/Ó2cÓ5øÓ8DÓ?Ô(nÓ
ÍÔ'Ó¡ÓòÓ
oÓFÓ’Ó1ÓçÓ ¿Ó$ÛÓ)˝Ó/fiÓ5øÓ9Ó=NÓAÅÓDÓIÓIÔ'Ó
ÍÔ%æÓ¡ÓòÓ
oÓFÓÓÙÓ¨ÓflÓdÓ% �Ó'x�Ó)&Ó+´Ó0µÓ5øÓ:…Ó@™ÓE¥ÓFãÓH?Ô%æÓ
ÍÔ$fÓ¡ÓòÓ
oÓFÓÓÙÓPÓ¨ÓflÓ!óÓ&°Ó)&Ó+´Ó4Ó6ñÓ<w	ÓE¥ÓH?Ô$fÓ
ÍÔ#Ó¡ÓòÓ
oÓFÓÓÙÓ’ÓZÓ∂ÓÈÓ$Ó&°Ó,ÇÓ/Ó5øÓ8DÓ;†ÓC/ÓFëÔ#Ó
ÍÔ!∂Ó¡ÓòÓ
oÓFÓÓÙ
ÓÓÓ#EÓ*‘Ó1åÓ5øÓ:…	ÓC5Ô!∂ˇ�������Ç����
Íq?Ä[«P����������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������~GACHA����������������
�����~GACHA����������������
����������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������
�������$�����/�����:�
�Ó��D��fl������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������j/�G��E�ˇˇú»≤)��ˇˇˇˇˇˇ��������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������({PHYLUM}<LISPCORE>LIBRARY>CMLARRAY.TTY;1�����������JONL.PA������������������������ 9-May-84 03:14:05���������������������������������������������������������������������������������������������������������������������������������������������������������