From d8ccc88c8295fd81c27c43e120dd327b031d4e36 Mon Sep 17 00:00:00 2001 From: Larry Masinter Date: Fri, 19 Aug 2022 14:59:46 -0700 Subject: [PATCH] add DONTEVAL@LOAD before LOADCOMP of other LOOPS sources to avoid load problems --- system/BLOCKLOOKUP.DFASL | Bin 3132 -> 3133 bytes system/INSPECT-PATCH.DFASL | Bin 1322 -> 1322 bytes system/LOADLOOPS.DFASL | Bin 11554 -> 11554 bytes system/LOOPS-FILEPKG.DFASL | Bin 18225 -> 18225 bytes system/LOOPS-TTYEDIT.DFASL | Bin 3780 -> 3490 bytes system/LOOPSACCESS.DFASL | Bin 30680 -> 30680 bytes system/LOOPSACTIVEVALUES.DFASL | Bin 42275 -> 38326 bytes system/LOOPSBROWSE.DFASL | Bin 179299 -> 153582 bytes system/LOOPSDATATYPES.DFASL | Bin 3597 -> 3597 bytes system/LOOPSDEBUG.DFASL | Bin 8691 -> 7744 bytes system/LOOPSEDIT.DFASL | Bin 12763 -> 12761 bytes system/LOOPSINSPECT.DFASL | Bin 36065 -> 32444 bytes system/LOOPSKERNEL | 892 +++++++++++++++----------------- system/LOOPSKERNEL.DFASL | Bin 109570 -> 99168 bytes system/LOOPSMETHODS | 631 ++++++++++------------ system/LOOPSMETHODS.DFASL | Bin 25725 -> 24770 bytes system/LOOPSPRINT | 81 ++- system/LOOPSPRINT.DFASL | Bin 9108 -> 9112 bytes system/LOOPSSITE.DFASL | Bin 1082 -> 1083 bytes system/LOOPSSPEEDUP | 20 +- system/LOOPSSPEEDUP.DFASL | Bin 5519 -> 5490 bytes system/LOOPSSTRUC | 72 +-- system/LOOPSSTRUC.DFASL | Bin 25616 -> 25661 bytes system/LOOPSUID | 23 +- system/LOOPSUID.DFASL | Bin 7777 -> 7733 bytes system/LOOPSUSERINTERFACE.DFASL | Bin 6582 -> 6316 bytes system/LOOPSUTILITY.DFASL | Bin 68373 -> 61198 bytes system/LOOPSWINDOW.DFASL | Bin 54174 -> 49670 bytes 28 files changed, 784 insertions(+), 935 deletions(-) diff --git a/system/BLOCKLOOKUP.DFASL b/system/BLOCKLOOKUP.DFASL index 71678678b18797b467e7ae9a8716134013d44336..e5abfcd13803a4b4ed541c5a299fb1f19fd0c8a0 100644 GIT binary patch delta 127 zcmdlZu~%Zk6a}}U%#_4R9R)*61;^6#(&7>YBLgENAm7Bw)X>V%VB?k*tc)&`W7*`@ z*%&q`crZo^GBPgK5WxyG{ZOOiYs(u?5L6GcYjEWS%h@h*)Ok Y&a9YOKC^6Qej}^d%qacM0_-}h0MYm(h5!Hn delta 126 zcmdlhu}5OU6ort|)Z&!HN*x6w1;^6#(&7>YBLgEN9R))JD-#ndQ=^SrRYBLgENAm7Bw)X>UkA$-T(jq delta 42 xcmZ3*wTf%PH2ILy)Z&!HN*x6w1;^6#(&7>YBLgEN9R))JD-%;IgN<8DSpY2v4I=;m diff --git a/system/LOADLOOPS.DFASL b/system/LOADLOOPS.DFASL index 49570d1c05825c8de5d215324291007cb46aaa68..9384aef99c7b3188ebd0d04a10ce80d4daa0138f 100644 GIT binary patch delta 213 zcmZ1!wJ2)BBn7vk%#_4R9R)*61;^6#(&7>YBLgENAm7Bw)X>V%VB;oHL1s%6v&p9f zlNk**>j{Z53iNp~Mn-Zn0KtAQrd=C8Ob!+{;j}a{=Wk+QV3gTBL3lAUB7W+@S2kB*@6>yM&#WVS~6YV}u|ho1YIO7uXPCU#7hqo_R9u+;D30S@Efi zU7M37oSB&|O$|1$lYBLgEN9R))JD-#ndQ^Sp$L^)->fGj#>n66#Td!S00jHJn09UWI5|Yvgww*nl)s6Afl+$%MB&BEj0+~4if0-a zGVTc%@L~Kgaf6Z%lOQ9j?-F)ih7DrAjDn18em;y`U^9e$nf7jY?#Z-s!|BQA#iufM zZcdeOW(L}6v3a$07bB2ix!FQ?Hxsjkp~2>F@+*NNhK8FLDeAMZu!IUQU diff --git a/system/LOOPS-FILEPKG.DFASL b/system/LOOPS-FILEPKG.DFASL index c70160a5611ac6ff3ab1b3af6cbc691d518f6529..8ac431dfb9509f7749de709c84c24523f0f81772 100644 GIT binary patch delta 110 zcmdnk$GEYNal#Z0x1!9H#7Z3nLrVq6()7~e5(OgzBO@T+#LCpr%Fu}G|J)hVn3VG; uGfE0?JpWl%-^?5cn7C$4?csO!aCP?94T%hJ1qqrkabgM@ZvH6epaB4rup!O> delta 110 zcmdnk$GEYNal#ahkkZuRl*CFM1tSH=()7~e5(OgzBO@IJLjx-l6Dw0wuK#mqOk+~c xpUfyJyz%^JS$!j8GgC7rt{GE%_?YuW6rIN~Q=o-F)TC+CKoipit+tTX1YF3Zr9z=#D1L?}P?&UR0ZnIEXiT6+ zW1655pKa!K(WI_aT+nK@6s$3E=Wj4^@4_G8qQ3X0MU0cl&AsQ`d(XLfUk6_HKijZR zuVgc+yCV*l#~~CKi?ZTykGb8r9`{bTyzZU7UwW5E*c6Nm{;I-b>5-47HoydS?E#wK z)F3Ix1{X=23I66r`*jSXL#ztPkHTmkB~WCQ8&lUSHW=oeHZY7+lRuMHW<^E1onc^u zSAh8Ld>02m296unfD8`}eWg2eDOI|$9MBYqjAdVHNC#3=Y6aN&>g;O$B1lm7T8<5O zv~AZ1!pogNbLPcNXz1W!Nb0-Q2iq&~Fay=L^Po29G zi^lzvaVN_2@Vl|M!KUXjECfxVQd!TV-=sg6a+3$9l{kOYmZqqC&(5++eXg*rMwS9%CU z_P!zIkB5lD=v;%fd1b4Mj8sC$#W8-Ctd@Q$D pHBT0hQ)u3z@soxhAA?Q)cgQfg1QRS0I%ype+J>1;;_=7P(I2?)4K)A& delta 1129 zcmZ`%OHUI~6rSny-9j)SkzkafhDAd|sh9{ZWKtVCr4P~;(Y6SsoiK$`0-eUNv4z<9 zY7F(F%!L)k1xo>IXhDhbmBxiD7XAP?ZuB4Ey?1IgMkbSc&V1iF-#y>G^X%07)5}lW zf*C#?k1lkYY$i4{nMsQ#o7HCPG<941dM@@^w@N>hBV+6utE13UWbX?3ev+P`Dd)Ds zN%9*qBqW(xTvg%T;Seqk=H+bFRi(Hp^)n{`S5@(lo5Zxs01j1MXO$GCfQ$t23*B%O zMxb|5bxnFwXt76Q0w1@4HnrK#3?W4Ch$lo3FAB5q%P`!H5N#rr7Ne;cPn)H63DCGL z;)zc47P-tqG%SvkIKKcwYLQOtd{L`tS^$Td`}8d^rftnGp<%v}k%*b=)5JvCNlb)_ zuDqPBA_q>{1cyvGNe5@ZRvLGOvQQEBgncJ7TJ$V!Q4i<{;YS*4XY$%j%L>4Q^xUN0BkOIvu)F0kj_>)W;K9T3Z`gBAT}?WUT1Y=TKc zNxy@COU%6l9Y#}g3GJ&C1wMu0K0=g0$k=wWLJo{UG|k~f<|<&>*qkLAy{LfHzmk9g zcEJc%=+8+&MbPcv`~2BZR9Jl!gB>f^Y`1f3ph6*5{?x@GRetj(!2g4sbC5 diff --git a/system/LOOPSACCESS.DFASL b/system/LOOPSACCESS.DFASL index 8b3d509c75bba477c8be6472faeeb700deb18d64..95a702e6f038583706892dde5348e61afdf07a79 100644 GIT binary patch delta 45 zcmccdp7F+e#tD-Y+=?<&5-W8S3@sHLOVdk>OB9R@jEsPM6Dw0gD?_7=o7Bnyjm-~L delta 45 zcmccdp7F+e#tD-YLP}GMQxYq66pR!cOVdk>OB9R@jEr;?3=OPIOsq^zH*QiZ2LP7f B52647 diff --git a/system/LOOPSACTIVEVALUES.DFASL b/system/LOOPSACTIVEVALUES.DFASL index 77af9320564c2e182af2f5f251bc120ce253ce11..37e7e7fc581bc9e22fba81c97ede4808a92b6cf3 100644 GIT binary patch delta 8041 zcmb6;3s{ubmH)l}3~z=RP@>3V@QtVl;sX*<-^ZL(RdYiuX5`F9`b7h}@ciWNG=E4%Q^?3E1K(1%y8_fH4;2W*NY|i$;;5@S zKwVMT$qIpQ8gV>Sf!OKu*77P_lGrgh?!OJL@isW?EUsW?^BR<{B0(ON6Je{#T5hYT z3dA_V@*Y~hjp&(atC{^`eR6Rzie>@%NID1}@36aSZ4SGwT43S;lU#dnK=TcB_3n1} z1dae!`2))-Ua&>Ei92fq=3Ssm0y=M7;Gi!;Ha>H*@{|O-aB#5$#oK~Laeje7C?5+j zhid}<98QYS>hXx#PX#$C72x*~%oX5Eyg&?3;8`~Wc#>;JxpshS z^#Vs5tT;5{ZKO0y%-E3)nK2XqVq|B%>Fk#q`bp)L#*IlN*l&r4GZYh1q{ad?tT}-- zTr-(fr`kN?8X7Ml*B#ZU?HxD7+Oy+}9o1D~V`#3L`|OE=V$w;kjo*lkS6am^XZ!b@ zj(N(Y%cxLQ$n8H=)3#6bQOeeDUI}mX%QFi)G~~T(Nbg0!U5kTdEe@Uqaz=&zZN2-C zID7gB+IqlXcjJP$n!C1gt(a?RKw)tC`v2=(I%(8dF&5&ZGxIsr`Pi1%_Y{W<=5uQB;9BtJK{q-9Zp+CKwljtkg+~@IxvD2nd{`G$#T%; z^GdjG9@pX`*A12z!*#EgH|DO!;8=@)>+o-~UMOXT16F67pQ3Q9O87Ey9+^-mYdev( zN?ne}yUg+y;Yl$zca6>3Ko$WUZws{b_k-j5RQ5AlNJv-F<91oB_&OnL_-zKQ(-8BG zGuMf`!F9qOHnAw;UOTJ-S`{s@@B_k**%z?fXVO^D<{0*Ed;DUXWG2j0Oc~!&#I;pi zTg0siTvNFw)m>Vd4-EM$_XL$kZ@oHfKO!4#A9ao|ix|fadzj_9j9@lf9a-D%n49Y+ zE%v`?Ynitgn?ljls1r<0L%;rx8qP^^4SHdG4@n9Aa%hsn7CD5CEkV!?36%0NMEl*m zz{3l+acu*lZsc=q@m%W@LGJ3Z6xLm00=4|g`I8mLzpRy3I8K?KSZgh>uwz;_nJ7!D zHkX9`EhnO=onbGUW1kk=EqZ_`#x7Txh1NxtG>NL1*HG@Tb1c#Fc`tyx_8Je*~Qv*a09KwxR0$R~-# zo!TxQ)xI!^_$(aJuA`Lw@Ov(B^i;dB{ME%0v@#GRG z`<-VMSn)!(t|7CWJdK=UZTSFbO>eKSch|$ik+69Sa68ht1?ZY3msP2oooUz_#GL*f zu3^%>jv(gri*oZ}9Nzy5i9B80gXv#+TYyk0is67bKw?@YW*ZmRk~_I3>QJ&mVzcES ziZy+Q2>W8&|A@^bPk_JWILN94%K}*hH?sE|b5>35l9U!?x8b%$fCzo$I9uu6$nN)k z1g}7O3#8bh8fRwvr05r~lB0azUA zG6ES;%WWfmqr>^1B6Gr1rSuMT`TA=6d>y{sJ}8cvk zNCCr=(Nw-l$5)X}Y;kh|N;2A92%igYHkT6^Vq4Y`>Xiw1VcSA>-!4%`U)beNDMHT) z=p&z+=GJof)P(YNqq-Uxi)*&l*4k?-ik1s5EB!sYJqP#u`sCM^L9#$Ic_p%;43S*+ zUh5rr|H8HsxWd!++Z2-w10F0Q=}D%wx4?Jo%k6uBv9yj=q)4A64pL2YA+N;eBu~)n z(D@L<2}DgH|JP#$24jbshBxHz$z~ZVQrO=Oiy-#*yMJGz&&Gqyk@ME@OnDxsMPKE- zGB{`Np0PMngw>SJ`Dv+iQPj;bq0>ZuUN?8H2lB@{kCGym*tIk^qQT~_Wm1Ey)qJU- zOwgUq4%sIi+0)bIJTr+`5>pgU?31qDpbw9~f@HmT7t)zl%OO(^VWHS}_I~s3mz3Kl zkfOM5K}^Tn;mX)%%`0+UGw#>Rdh8om6RV~*w>|qx_tH&L-4Ab$5_)A6d`A>K=Sd8K zmY@r7zXGLGRBHMvH|y5(+$G$c%CqHz-KYEi-mh#5o!>BHAS&FF1F(u&_ zpK7{aF80Ww0oUDbIlDdEv3-JVcOS5QB#I4x6kHVreuf6x(|LQEvqZJ3zvHaNrIFvbjQiqMm@2os5O8?T$p3DqjZ=m#z<|44St!%kSK z2=S3t*u*0DJji11c~RGoc8zcFj~9h|1rr%_DA*qlWdujY4`2f#>Y%59%7!hM@tp8Z zK7%?{fq4X(+?6`n3J<8bQ>U-wyHlkqa@?t5UF;B*Pe4ECgUp?3tftp5f3XBN8kLPS z0qj%XFG4qs2heaxw81L-diUX{Ar)P;ls@0SHh+)5rxQbbKaFM6hto~3P^_}m@oQ*e@0@2@E)f&Fk>>`2^-MB>zBwy=ZN( z3hNLm4(v{IeZt(BoY#vu}?xyASl{-qzR7EJKFkf^{IIhnIHy|C*xwCDkk4z z9~{lZI&80i*gHq>2gj+pZ$3$PW2m7XGj9GUO$@4@9XysxV%XWieD;H57Vs|h_%%f^DsiOSv# z76ga!&PdY=BZ_LWBl1Jkg?cY`t5ki$VeabYS_jwg-AOyPwn)4Dc%H(ljpQvBTSW&I6MggNnpgQPK#zN9$W z6ZtH7DxU3lumF}%J@^w!-)F7EL73be{yNg;&C=cjTK)GE$s!zm{*Zh9lVLxFF3B*u z^Ta}MJ`4l_U37V9jD&(RcINal_V&XGGan}8YZ@y&wlWBkDI=&Fm+U!PJW^3haIj!M z?*z}oC`}s=^Su4I(9j_)-R4Cb*8Khb;IBIY6&Fc94kVkx2u|{fOOl%m$id)d1DCVZqz_e({qsK-X@(&`rHJFpAhJ_2Q zk*Vp!rMPB^KZs*v2M!G~hfiTqO!Ba;LZ`5BBBkj1D6XQU(96-{j($np+B2dgK5*tq z;$rb4PptI=~A;#U#MAP^ZZ+Kg@JpveBXIWPcmVU)w3J)1krZ{CIWQ5Y2$g_3)YD+K&38 z7I0XNM*4$Ze%HcE6$^6mN32bCd(cD4XLLUM`MC}3CXY{^b1?gq-!Mk@{7LRHu(zIi zIL?VXbyckCyq)UC*wg3P9bTPO*xe>%C`QtcG3SMBOX=)uG<8Qmo@k5WngtWJ>_*5J zYQJ3Q8Nhi*a;>MqZmDFD^X{&#FG)lIO~7xS0ut|p4k5>t_KBE;}2dMD53 zIULi2?i#!AVn&AU8X#ahE}40*Xh_LD?3IfbsP4y1d%B6VvKO9S8C+lqmmPD}VFadu zW!)b5Jrc}RX7EJ>&J-pq{^JFA$ras4I4c_>Qsow!#69A{l?%9#89Jw{M`fZPL|wHt z+>w^55C33=6KnLOTuyHD9>0HP1-wVbv-v^HwbU&e1a9d%?#QEnEOcpZj1AfGZW06G zt8jQC@6T)y}Cx0goaVKf!+Ju^5we>lbQ>x&20d4 zixF1S=&YckovHS=@1;`hP_jK&6pRzSN%slyRr-*Qk8mZ?L1G`%N;?Cq_y+h-#wZQPA9}_im|ld>4|bjz0fGQq6w!e3MT1 I*%x2@ANSNvqW}N^ delta 12015 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
c?OBCWY_jR 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℞yeP-B_qh)_Nr-I!4{_diy(XZC{jF_^2=)YeAU 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 diff --git a/system/LOOPSDATATYPES.DFASL b/system/LOOPSDATATYPES.DFASL index 683b731f28eb7781ab071540a05aefc83574c199..c1074d35077c6a46d91d48a780be2f09324468ef 100644 GIT binary patch delta 43 xcmeB`>6Mu6Mu?>Uxz9HU^vgB*WCW4q>v$EJdSI zBr!OyhQjeNwTnoGF7=+IDION|&c$G>$f`AR#EIHMAX{Xug#U9l>he2L9O-A-Z2Yd8 zvCRY3s#nvcS0iaB|1Qs}IXLEe4{(vSF8iS@1L1ZyY5N4>XB@Cs7j9o*{_X5T`$x!= zo!}zz@aQPM>8L3LIp*8NX-6eQ_^m@aYD9J#(-c%Bzm<7+u%-M_atA;?7667hZ3+Q^ zG(#HG!L;SPhjwlm3h;%_R zy=bC&n*Q9B5(vD@8SvsZNe#S-t(I5}ZHC^3j+qRY##_z?SEC;x*z1RWLFAbyitMM#W1^UvgGy&0q)h37Jk|B~rl|Ro$;|wMmxN>W;Psv| hzh^$s%?S#yTyH=sf5agD&`W&E?ZzSZQ^Sc|?iZCpEH(fD delta 2166 zcmeHIUrbw77{BM<6==ZH76zsK$t9aklND(l3o;XXSL%9cODDr_GdNe;8#*EFLN6*= zNFB<983yagMytjc$Ff9yppux4Xi8#C)|HLugUMb@$exUek@(_^o9FvZg}(S_KKNwQ z-tYJQ@BQ*S-&uR=7th;N9-h)tvB>m(*(EDeV^b+zc6Ga4`({h!UCVg$>H@g#`rzOO($pBb3rXi+T+zM}B+YjLU;#S1>nP-`K` zbi%D1_DmT5VPYC`%9#b<^11)AH?$VjTDn%>OC-8!eivAJa53`9Tr=6MAJi~FKJPINQ;8;b?zVFq8UZe!aSrA@d7~8 zHWYqkMNCR8rlh0#nU}S2WMWE#I(M1f5S@smQlQ;oTFse6N{=L>=q@mWG^o7-&X2KL z3E+na*8#qj^Uk1lGtT{|xUV0@t;f0XVQ#eMo(>yWNl^{&g5+*<|K}U$8YX!U zhls4IBp6zY5b(gX!ql6PdKV$m;|@ZkM*-ojS%DqGKO@ki4?>_;16I6U!5=hi{0&o# zjA%R%sInqAtP!%cve~#n$WJui)Lpan1iH6YerUQ)st}jxnysgXSU@3W`kQSJX{4Pk z%5Iz3!bod4JmgjURvs!2(iyv*W?B-Kl7O9vnNb%qE!1qc9s8pUhA*A3K7zi+LnwA1 zL-2tp|CLJfK@%o~P>6py#ulb*Bp^c;d+*k4|T*W9>8PiE9PjuzPpb@MIi zV_VdXyU$lk3-(STvVF8~>;N{oA$8??TM(A&QLK}iit{DBpL1p}8U9r>_6~xH9<{cL zPH5S2+Jz04&Xb+q&cE)R&R(j9Q6AgANGwEff0P$CPDAzU@l}giQl*hhU^XvYrOT~- zUd=CxWW-PWBKtB350RAT^ko3&bSg7A$I)W2Ck+GQl~H7FkJljlmrjU{zJD8sK+WVL)76zEb}C&F~fl z)hvkBj94TrN-!eg5QUs9NbD!lPuiY*mh|G}@Bn|u0*yXz;Hbyv_4t7(d1k5ZAMyr6 zVK3-QJoq7~ztko<&!EwR9yv^AmN+rd`BXw%cGOYJ>y!UOO}VH&uVhWFY8HpEGZ`wU9VQ8(97-b JO3MBFzXK$zV1WPt diff --git a/system/LOOPSEDIT.DFASL b/system/LOOPSEDIT.DFASL index 6c39da673a356c193fb6412311bd0e2442929a81..d113e285c78d26a327cbddbb37eacd394969f6e5 100644 GIT binary patch delta 63 zcmcbed^35%1O>OE%#_4R9R)*61;^6#(&7>YBLgENAm7Bw)X>V%V&jIRJS@y1MuwZK Qcqej$SVo%#Bu`5K0It>(hX4Qo delta 65 zcmcbad^>r<1ci{&)Z&!HN*x6w1;^6#(&7>YBLgEN9R))JD-#ndQ?rd5j`FawgczC` SZ?5E>$PH$iZ03_ZEdc=J78E`J diff --git a/system/LOOPSINSPECT.DFASL b/system/LOOPSINSPECT.DFASL index eead07f62726226ef3d55c3034ebc8eb5fc3d391..5e50ec80f79e07dc6795cb016a2dff7241b97c23 100644 GIT binary patch delta 10869 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 diff --git a/system/LOOPSKERNEL b/system/LOOPSKERNEL index d0d8138..1a0bbb9 100644 --- a/system/LOOPSKERNEL +++ b/system/LOOPSKERNEL @@ -1,13 +1,14 @@ -(DEFINE-FILE-INFO PACKAGE "IL" READTABLE "INTERLISP" BASE 10) -(FILECREATED "15-Jun-93 12:34:16" {DSK}release>loops>2.0>src>LOOPSKERNEL.;3 139600 +(DEFINE-FILE-INFO PACKAGE "INTERLISP" READTABLE "INTERLISP" BASE 10) - changes to%: (METHODS Class.MakeEditSource) +(FILECREATED "19-Aug-2022 14:47:13" {DSK}larry>loops>system>LOOPSKERNEL.;2 137227 - previous date%: " 6-Nov-91 13:03:28" {DSK}release>loops>2.0>src>LOOPSKERNEL.;2) + :CHANGES-TO (VARS LOOPSKERNELCOMS) + + :PREVIOUS-DATE "15-Jun-93 12:34:16" {DSK}larry>loops>system>LOOPSKERNEL.;1) (* ; " -Copyright (c) 1983, 1984, 1985, 1986, 1987, 1988, 1990, 1991, 1993 by Venue & Xerox Corporation. All rights reserved. +Copyright (c) 1983-1988, 1990-1991, 1993 by Venue & Xerox Corporation. ") (PRETTYCOMPRINT LOOPSKERNELCOMS) @@ -56,6 +57,7 @@ Copyright (c) 1983, 1984, 1985, 1986, 1987, 1988, 1990, 1991, 1993 by Venue & Xe Tofu.SuperMethodNotFound) (FNS MakeMethodMenu MethodMenuWhenSelectedFn SelectFile) (DECLARE%: EVAL@COMPILE DONTCOPY (EXPORT (MACROS \PutValueOnly)) + DONTEVAL@LOAD (FILES (LOADCOMP) LOOPSDATATYPES LOOPSACTIVEVALUES LOOPSMETHODS)) (DECLARE%: DONTEVAL@LOAD DOEVAL@COMPILE DONTCOPY COMPILERVARS (ADDVARS (NLAMA METHCOM) @@ -74,11 +76,11 @@ Copyright (c) 1983, 1984, 1985, 1986, 1987, 1988, 1990, 1991, 1993 by Venue & Xe (* ;;; "Functions called by kernel classses") -(RPAQQ KERNELFNS (AddCIV AddCV AddIV AllSubClasses ClassName CopyCVToIV CopyDeepDescr - CopyInstance CopyLoopsStruc DeleteIV DumpInstanceFacts EnsureFnLoaded - FixSelectorSpelling \LoopsFixSpell \LoopsDwim \FixSelectorSpelling - GetMethodObj GetMethodObj! IVSublis METHCOM MapIVs MapIVs! NewWithValues - OldClass SendMessageNotUnderstood SubsTree TypeInMethods WhoHas)) +(RPAQQ KERNELFNS (AddCIV AddCV AddIV AllSubClasses ClassName CopyCVToIV CopyDeepDescr CopyInstance + CopyLoopsStruc DeleteIV DumpInstanceFacts EnsureFnLoaded FixSelectorSpelling + \LoopsFixSpell \LoopsDwim \FixSelectorSpelling GetMethodObj GetMethodObj! + IVSublis METHCOM MapIVs MapIVs! NewWithValues OldClass + SendMessageNotUnderstood SubsTree TypeInMethods WhoHas)) (DEFINEQ (AddCIV @@ -630,17 +632,17 @@ Copyright (c) 1983, 1984, 1985, 1986, 1987, 1988, 1990, 1991, 1993 by Venue & Xe (* ;;; "The kenel classes themselves") -(RPAQQ KERNELCLASSES (AbstractClass Class DestroyedClass DestroyedObject MetaClass Method Object - Tofu)) +(RPAQQ KERNELCLASSES (AbstractClass Class DestroyedClass DestroyedObject MetaClass Method Object Tofu + )) (DEFCLASSES AbstractClass Class DestroyedClass DestroyedObject MetaClass Method Object Tofu) (DEFCLASS AbstractClass (MetaClass MetaClass doc (* * Abstract classes are placeholders in the inheritance network, which cannot - themselves be instantiated.) + themselves be instantiated.) - Edited%: (* mjs%: "30-JUN-82 16:41") + Edited%: (* mjs%: "30-JUN-82 16:41") ) (Supers MetaClass)) @@ -649,49 +651,49 @@ Copyright (c) 1983, 1984, 1985, 1986, 1987, 1988, 1990, 1991, 1993 by Venue & Xe (* * This is the default metaClass for all classes) - Edited%: (* smL "18-Sep-86 15:04") + Edited%: (* smL "18-Sep-86 15:04") ) (Supers Object)) (DEFCLASS DestroyedClass - (MetaClass AbstractClass Edited%:  (* kmk%: "13-Dec-84 15:46") - doc (* Becomes the class for any - destroyed class) + (MetaClass AbstractClass Edited%: (* kmk%: "13-Dec-84 15:46") + doc (* Becomes the class for any destroyed + class) ) (Supers AbstractClass)) (DEFCLASS DestroyedObject - (MetaClass Class Edited%:  (* TheCollaborators%: "15-Oct-84 16:23") + (MetaClass Class Edited%: (* TheCollaborators%: "15-Oct-84 16:23") ) (Supers Object)) (DEFCLASS MetaClass - (MetaClass MetaClass Edited%:  (* mjs%: "30-JUN-82 16:38")) + (MetaClass MetaClass Edited%: (* mjs%: "30-JUN-82 16:38")) (Supers Class)) (DEFCLASS Method (MetaClass Class doc (* Connects class to function - implementing method, plus properties) + implementing method, plus properties) Edited%: (* smL " 9-May-86 14:40") ) (Supers Object) (ClassVariables (ivProperties (doc args category) doc (* names of IVs which should be made - properties of the method) + properties of the method) )) - (InstanceVariables (className NIL doc (* name of class in which this - method appears)) + (InstanceVariables (className NIL doc (* name of class in which this method + appears)) (selector NIL doc (* An atom which is the selector for - the method;)) + the method;)) (method NIL doc (* Atom name of function which does the work other properties of this IV are - properties of the method) + properties of the method) ) (args NIL doc (* arguments of the method)) (doc NIL doc (* documentation of the method)) (category NIL doc (* if a LITATOM, a public method. - If a LIST, internal)))) + If a LIST, internal)))) (DEFCLASS Object (MetaClass Class doc (* Default behavior stored here.) @@ -701,7 +703,7 @@ Copyright (c) 1983, 1984, 1985, 1986, 1987, 1988, 1990, 1991, 1993 by Venue & Xe (DEFCLASS Tofu (MetaClass AbstractClass doc (* Minimum super for objects in - system.) + system.) Edited%: (* ; "Edited 30-Nov-87 09:24 by jrb:") ) (Supers)) @@ -1166,7 +1168,7 @@ the default datatype printing mechanism." (category (Tofu))) -(Method ((Class AllInstances) self) (* ; "smL 19-May-86 09:49") +(Method ((Class AllInstances) self) (* ; "smL 19-May-86 09:49") "Find all instances that you can. Used IndexedObject if possible" [COND ((_ self Subclass ($ IndexedObject)) @@ -1185,13 +1187,12 @@ the default datatype printing mechanism." (category (Tofu))) (OR (NULL includeCategories) (LISTP includeCategories) (ERROR "Not a list of categories:" includeCategories)) - (for sel in (OR okSelectors (_ self ListAttribute 'Selectors)) - bind (allCategories _ (COPY includeCategories)) + (for sel in (OR okSelectors (_ self ListAttribute 'Selectors)) bind (allCategories _ (COPY + includeCategories + )) do (for cat inside (@ (GetMethodObj! self sel) - category) when (NOT (MEMB cat allCategories)) - do (SETQ allCategories (NCONC1 allCategories cat))) finally (RETURN - allCategories - ))) + category) when (NOT (MEMB cat allCategories)) + do (SETQ allCategories (NCONC1 allCategories cat))) finally (RETURN allCategories))) (Method ((Class CVMissing) self object varName propName typeFlag newValue) (* ; "smL 21-Apr-86 10:32") @@ -1205,7 +1206,7 @@ the default datatype printing mechanism." (category (Tofu))) then NoValueFound else NotSetValue)) -(Method ((Class CategorizeMethods) self categorization) (* ; "smL 31-Oct-86 14:01") +(Method ((Class CategorizeMethods) self categorization) (* ; "smL 31-Oct-86 14:01") "Change the categorization according to the categorization argument, which must be in format: ((category (selectors ...)) ...) --- If this argument isn't provided, then prompt the user to EDIT a form in this syntax that represents the current categorization --- Note that a selector can be in more than one category" (* ;;; "") @@ -1217,15 +1218,13 @@ the default datatype printing mechanism." (category (Tofu))) (* ;; "") (if (NULL categorization) - then [SETQ categorization (for cat in (_ self AllMethodCategories - '(Any Public Internal)) - bind (selectors _ (_ self ListAttribute 'Selectors)) - collect (LIST cat (_ self SelectorsInCategories cat - selectors)] - (EDITE categorization)) (* ; "Strip out any pseudo-categories") + then [SETQ categorization (for cat in (_ self AllMethodCategories '(Any Public Internal)) + bind (selectors _ (_ self ListAttribute 'Selectors)) + collect (LIST cat (_ self SelectorsInCategories cat selectors)] + (EDITE categorization)) (* ; "Strip out any pseudo-categories") (SETQ categorization (for cat-descr in categorization when [NOT (MEMB (CAR cat-descr) - '(Any Public] collect cat-descr)) + '(Any Public] collect cat-descr)) (* ;; "") @@ -1233,11 +1232,10 @@ the default datatype printing mechanism." (category (Tofu))) (* ;; "") - [for sel in (_ self ListAttribute 'Selectors) - when (for each in categorization thereis (MEMB sel (CADR each))) + [for sel in (_ self ListAttribute 'Selectors) when (for each in categorization + thereis (MEMB sel (CADR each))) do (_ self ChangeMethodCategory sel (for each in categorization - when (MEMB sel (CADR each)) - collect (CAR each)))]) + when (MEMB sel (CADR each)) collect (CAR each)))]) (Method ((Class ChangeMethodCategory) self selector newCategory) (* ; "smL 21-Aug-86 15:11") @@ -1246,39 +1244,36 @@ the default datatype printing mechanism." (category (Tofu))) self)))] (if (AND selector (GetMethodObj self selector)) then [SETQ newCategory - (OR newCategory - (LET [(choice (MENU (create MENU - ITEMS _ (CONS '*other* - (for cat - in (SORT (_ self - AllMethodCategories) - ) - collect (LIST cat))) - CENTERFLG _ T - TITLE _ "New method category"] - (if (EQ choice '*other*) - then (PromptRead "New Category: " PROMPTWINDOW) - else (CAR choice] - (if newCategory - then (COND - ((LISTP newCategory) (* ; "Lists replace old categories") - - (* ;; "Categories can only be atoms") - - (if (for c in newCategory thereis (NOT (CL:SYMBOLP - c))) - then (ERROR "Non-symbol in Category list") - else (change (@ (GetMethodObj self selector) - category) - newCategory))) - ((CL:SYMBOLP newCategory) (* ; "Atoms are added") - (push (@ (GetMethodObj self selector) + (OR newCategory + (LET [(choice (MENU (create MENU + ITEMS _ (CONS '*other* + (for cat + in (SORT (_ self AllMethodCategories)) + collect (LIST cat))) + CENTERFLG _ T + TITLE _ "New method category"] + (if (EQ choice '*other*) + then (PromptRead "New Category: " PROMPTWINDOW) + else (CAR choice] + (if newCategory + then (COND + ((LISTP newCategory) (* ; "Lists replace old categories") + + (* ;; "Categories can only be atoms") + + (if (for c in newCategory thereis (NOT (CL:SYMBOLP c))) + then (ERROR "Non-symbol in Category list") + else (change (@ (GetMethodObj self selector) category) - newCategory)) - (T (ERROR "Non-symbol in Category list"))) - (_ (GetMethodObj self selector) - ObjectModified) - newCategory))) + newCategory))) + ((CL:SYMBOLP newCategory) (* ; "Atoms are added") + (push (@ (GetMethodObj self selector) + category) + newCategory)) + (T (ERROR "Non-symbol in Category list"))) + (_ (GetMethodObj self selector) + ObjectModified) + newCategory))) (Method ((Class CreateInstance) self oldObject oldInstanceFlg) (* ; "dgb: 13-OCT-83 22:06") @@ -1298,16 +1293,16 @@ it blank . If oldInstanceFlg=T, then it does not mark the object as modified." (RETURN (PROMPTPRINT "No method defined."))) (RETURN (DefineMethod self selector args exp file methodType)))) -(Method ((Class DelFromFile) self) (* ; "smL 8-Apr-87 13:05") +(Method ((Class DelFromFile) self) (* ; "smL 8-Apr-87 13:05") "Delete a class from a file" (LET [(files (WHEREIS (ClassName self) 'CLASSES] (if files then (DELFROMFILES (ClassName self) - 'CLASSES files) + 'CLASSES files) else T))) -(Method ((Class EM!) self selector) (* ; "smL 15-Jan-87 16:55") +(Method ((Class EM!) self selector) (* ; "smL 15-Jan-87 16:55") "Edit in place, make local or specialize method" (PROG (items classForMethod) (OR selector (SETQ selector (_ self PickSelector (CONCAT "EM!: " (ClassName self)) @@ -1340,7 +1335,7 @@ it blank . If oldInstanceFlg=T, then it does not mark the object as modified." (RETURN NIL] (RETURN (_ classForMethod EditMethod selector)))) -(Method ((Class Edit) self commands) (* ; "smL 13-May-86 13:14") +(Method ((Class Edit) self commands) (* ; "smL 13-May-86 13:14") "Use Interlisp editor on source of class" [PROG (editResult (editSource (_ self MakeEditSource))) LP [SETQ editResult (NLSETQ (EDITE editSource commands (ClassName self) @@ -1354,7 +1349,7 @@ it blank . If oldInstanceFlg=T, then it does not mark the object as modified." (GO LP))) (RETURN (SETQ LASTCLASS (ClassName self]) -(Method ((Class Edit!) self commands) (* ; "dgb: 31-OCT-83 09:11") +(Method ((Class Edit!) self commands) (* ; "dgb: 31-OCT-83 09:11") "Use Interlisp editor on source of class including inherited values" [PROG ((editSource (_ self MakeFullEditSource))) LP (COND @@ -1374,39 +1369,35 @@ it blank . If oldInstanceFlg=T, then it does not mark the object as modified." then NIL elseif (NULL method) then (LET [(allSelectors (_ self ListAttribute! 'Selectors)] - (if (MEMB selector allSelectors) - then (* The method is an inherited one) - (if (EQ 'Y (ASKUSER NIL NIL (CONCAT selector - " is not a local method of " - self + (if (MEMB selector allSelectors) + then (* The method is an inherited one) + (if (EQ 'Y (ASKUSER NIL NIL (CONCAT selector " is not a local method of " + self ". Should I make it local for editing? " - ))) - then (SETQ method (_ self MakeLocalMethod selector))) - else (LET* [(containingForm (if (AND (BOUNDP '\SendForm) - (EQ \Obj self) - (EQ selector 'EditMethod)) - then \SendForm)) - (correctedSelector - (\LoopsFixSpell selector allSelectors - (CONS '_ containingForm) - (if (EQ 'QUOTE (CAR (CADDR containingForm))) - then (CDR (CADDR containingForm] - (if correctedSelector - then (SETQ selector correctedSelector) - (SETQ method (OR (FindLocalMethod self - correctedSelector) - (_ self MakeLocalMethod - correctedSelector)] + ))) + then (SETQ method (_ self MakeLocalMethod selector))) + else (LET* [(containingForm (if (AND (BOUNDP '\SendForm) + (EQ \Obj self) + (EQ selector 'EditMethod)) + then \SendForm)) + (correctedSelector (\LoopsFixSpell + selector allSelectors (CONS '_ containingForm) + (if (EQ 'QUOTE (CAR (CADDR containingForm))) + then (CDR (CADDR containingForm] + (if correctedSelector + then (SETQ selector correctedSelector) + (SETQ method (OR (FindLocalMethod self correctedSelector) + (_ self MakeLocalMethod correctedSelector)] (if (NULL method) then NIL elseif (NULL (CheckMethodForm self selector method)) then (PROMPTPRINT method " is not a known function.") else (if (GETDEF method 'METHOD-FNS NIL '(NOERROR NOCOPY NODWIM)) - then (EDITDEF method 'METHOD-FNS NIL commands) - else (PROMPTPRINT "Can't find source for " method T) - NIL)))) + then (EDITDEF method 'METHOD-FNS NIL commands) + else (PROMPTPRINT "Can't find source for " method T) + NIL)))) -(Method ((Class EditMethodObject) self selector) (* ; "smL 29-Jan-86 14:04") +(Method ((Class EditMethodObject) self selector) (* ; "smL 29-Jan-86 14:04") "Edit the object corresponding to the method" (PROG NIL (OR selector [SETQ selector (_ self PickSelector (CONCAT "EditMethodObject: " (ClassName @@ -1416,17 +1407,17 @@ it blank . If oldInstanceFlg=T, then it does not mark the object as modified." (RETURN NIL)) Edit))) -(Method ((Class FetchMethod) self selector) (* ; "dgb: 29-Feb-84 08:50") +(Method ((Class FetchMethod) self selector) (* ; "dgb: 29-Feb-84 08:50") "Find the name of the function which implements this method in this class" (FetchMethod self selector)) -(Method ((Class FileIn) self fileSource) (* ; "smL 19-May-86 19:15") +(Method ((Class FileIn) self fileSource) (* ; "smL 19-May-86 19:15") "Create an instance from expr, which was read from a file" (LET ((obj (_ self Old fileSource))) (_ obj InstallFileSource fileSource) (_ obj OldInstance))) -(Method ((Class FileOut) self file) (* ; "dgb: 24-Sep-84 12:57") +(Method ((Class FileOut) self file) (* ; "dgb: 24-Sep-84 12:57") "Print out a class definition to a file." [RESETVAR FIRSTCOL 16 (LET ((source (_ self MakeFileSource))) (COND @@ -1435,25 +1426,25 @@ it blank . If oldInstanceFlg=T, then it does not mark the object as modified." " is not defined as a class. Type OK to ignore this class and go on.")) (T (* ; - "Bind the flag to stop PPing embedded objects in a class") + "Bind the flag to stop PPing embedded objects in a class") (LET ((ObjectDontPPFlag T)) (printout file "(" .P2 'DEFCLASS " " .FONT LAMBDAFONT .P2 (CADR source) .FONT DEFAULTFONT 3) (if PRETTYFLG then (printout file .PPFTL (CDDR source) - ")" T T) + ")" T T) else (printout file .PPVTL (CDDR source) - ")" T] + ")" T] self) -(Method ((Class Fringe) self) (* ; "smL 11-Apr-86 15:01") +(Method ((Class Fringe) self) (* ; "smL 11-Apr-86 15:01") "List classes which have now subclasses" (for C in (_ self ListAttribute! 'Subs) when (NULL (_ (GetClassRec C) - ListAttribute - 'Subs)) collect C)) + ListAttribute + 'Subs)) collect C)) -(Method ((Class GetClassProp) self propName) (* ; "smL 27-May-86 14:11") +(Method ((Class GetClassProp) self propName) (* ; "smL 27-May-86 14:11") "Maps through a class and its metaClasses in order to find the value of a property on the class itself. Returns if property is set, or NotSetValue if none found. If propName is NIL, then returns the metaClass of the class." @@ -1461,15 +1452,15 @@ metaClass of the class." ((NULL propName) (_ self Class)) (T (bind (class _ self) - value do (COND - [[NOT (NotSetValue (SETQ value (GetClassHere class propName] - (RETURN (ExtractRealValue class NIL value propName 'CLASS] - ((EQ class (SETQ class (_ class Class))) + value do (COND + [[NOT (NotSetValue (SETQ value (GetClassHere class propName] + (RETURN (ExtractRealValue class NIL value propName 'CLASS] + ((EQ class (SETQ class (_ class Class))) (* * Lots of class in this code. SETQ replaces value of class. - Stops at any tight loop such as Metaclass) + Stops at any tight loop such as Metaclass) - (RETURN NotSetValue]) + (RETURN NotSetValue]) (Method ((Class HasAttribute) self type name propname) "Similar to HasItem, but with right semantics from start." @@ -1495,7 +1486,7 @@ metaClass of the class." (for super in (Supers self) when (_ super HasAttribute type name propname) do (RETURN T)))) -(Method ((Class HasItem) self itemName prop itemType) (* ; "mjs: 4-Dec-85 14:26") +(Method ((Class HasItem) self itemName prop itemType) (* ; "mjs: 4-Dec-85 14:26") "Generalized Has predicate for IVS, CVS, METHODS." (SELECTQ itemType ((IV IVS) @@ -1506,11 +1497,11 @@ metaClass of the class." (FindLocalMethod self itemName)) NIL)) -(Method ((Class IndexedInstances) self) (* ; "dgb: 16-May-84 19:56") +(Method ((Class IndexedInstances) self) (* ; "dgb: 16-May-84 19:56") "Find IndexedInstances of this class" (FindIndexedObjects (ClassName self))) -(Method ((Class Initialize) class self) (* ; "dgb: 18-JAN-83 17:25") +(Method ((Class Initialize) class self) (* ; "dgb: 18-JAN-83 17:25") "Run initial expression for IVs with active value defaults with ls = INITIAL or gfn = AtCreation. In that case, makes a value which is the expression in GetFn. Other active values are copied to instance by PutValue" @@ -1523,13 +1514,12 @@ List! (QUOTE IVPROPS) varName)) when (NEQ NotSetValue (SETQ value (FireInit self (FastClassInitialize class self) self) -(Method ((Class InstallEditSource) self editedDescription) - (* ; "smL 13-May-86 13:03") +(Method ((Class InstallEditSource) self editedDescription) (* ; "smL 13-May-86 13:03") "Make class conform to new edited description" [LET ((className (ClassName self))) (COND ((CheckClassSource editedDescription className) (* ; - "Dont't install the class if there are errors. Bounce back to editor") + "Dont't install the class if there are errors. Bounce back to editor") (RINGBELLS 1) (* ;; "JRB - changed from PROMPTPRINT to two PRIN1s because PROMPTPRINT clears the window,so you never get to see error message printed by CheckClassSource") @@ -1548,15 +1538,14 @@ Type ^ to return to editor ")) (PutClass self (EDITDATE NIL INITIALS) 'Edited%:]) -(Method ((Class ListAttribute) self type name) (* ; "smL 23-May-86 10:29") +(Method ((Class ListAttribute) self type name) (* ; "smL 23-May-86 10:29") "Fn to list local parts of a class." [SELECTQ (SETQ type (U-CASE type)) (IVS (APPEND (fetch (class localIVs) of self))) (CVS (APPEND (fetch cvNames of self))) ((METHODS SELECTORS) (\ListFromBlock (fetch selectors of self))) - (METHODOBJECTS (for s in (_ self ListAttribute 'Selectors) - collect (MethName self s))) + (METHODOBJECTS (for s in (_ self ListAttribute 'Selectors) collect (MethName self s))) (FUNCTIONS (\ListFromBlock (fetch methods of self))) ((SUPERS SUPERCLASSES) (for x in (fetch localSupers of self) collect (ClassName x))) @@ -1580,8 +1569,7 @@ Type ^ to return to editor ")) (for x in descr by (CDDR x) collect x)) (for x in (CDR descr) by (CDDR x) collect x]) -(Method ((Class ListAttribute!) self type name verboseFlg) - (* ; "smL 29-Sep-86 11:27") +(Method ((Class ListAttribute!) self type name verboseFlg) (* ; "smL 29-Sep-86 11:27") "Recursive version of ListAttribute message. Omits things inherited from Object and Class unless verboseFlg is T. Sets it to T for Class and Object" (COND @@ -1605,18 +1593,17 @@ verboseFlg is T. Sets it to T for Class and Object" ((SUBS SUBCLASSES) (* List all subclasses of self) (SubsTree self)) (PROG (attList) (* Here if need to recur to collect - items.) + items.) (MapSupersUnlessBadList [COND (verboseFlg NIL) (T '(Class Object Tofu] - (for item in (_ class ListAttribute type name) - do (pushnew attList item)) + (for item in (_ class ListAttribute type name) do (pushnew attList item)) self) (RETURN (SELECTQ type (CLASS (DREVERSE attList)) attList]) -(Method ((Class MakeEditSource) self) (* ; "smL 14-May-86 14:56") +(Method ((Class MakeEditSource) self) (* ; "smL 14-May-86 14:56") "Make a source for editing the class" (DECLARE (GLOBALVARS EditClassMethodsFlg)) [LIST* (CONS 'MetaClass (GetSourceMeta self)) @@ -1626,17 +1613,16 @@ verboseFlg is T. Sets it to T for Class and Object" (COND (EditClassMethodsFlg (LIST (CONS 'MethodFns (SORT (for I from 0 by 2 - bind sel (sels _ (fetch selectors - of self)) - (meths _ (fetch (class methods) - of self)) + bind sel (sels _ (fetch selectors of self)) + (meths _ (fetch (class methods) + of self)) first (if (NULL sels) - then (RETURN NIL)) + then (RETURN NIL)) eachtime (SETQ sel (\GetNthEntry sels I)) - until (NULL sel) - collect (\GetNthEntry meths I]) + until (NULL sel) collect (\GetNthEntry meths I + ]) -(Method ((Class MakeFileSource) self file) (* ; "smL 4-Apr-86 17:47") +(Method ((Class MakeFileSource) self file) (* ; "smL 4-Apr-86 17:47") "Creates a list structure source of a class to be dumped on a file" (LET (tail (cvs (GetSourceCVs self)) (ivs (GetSourceIVs self))) @@ -1647,7 +1633,7 @@ verboseFlg is T. Sets it to T for Class and Object" (Supers %,. (GetSourceSupers self)) %,. tail))) -(Method ((Class MakeFullEditSource) self) (* ; "mjs: 25-Oct-85 15:59") +(Method ((Class MakeFullEditSource) self) (* ; "mjs: 25-Oct-85 15:59") "Make source including inherited values" (LIST (CONS 'MetaClass (GetSourceMeta self)) (CONS 'Supers (GetSourceSupers self)) @@ -1660,47 +1646,44 @@ verboseFlg is T. Sets it to T for Class and Object" (@ (GetMethodObj self selector) category)) -(Method ((Class MoveToFile) self file) (* ; "smL 17-Apr-86 14:12") +(Method ((Class MoveToFile) self file) (* ; "smL 17-Apr-86 14:12") "Move this class to a file" [COND ([NULL (OR file (SETQ file (SelectFile] (printout PROMPTWINDOW "Nothing moved!")) (T (MOVEITEM file (ClassName self) 'CLASSES) - (for method in (_ self ListAttribute 'METHODS) - do (* First make sure we have the - source loaded) - (LET ((methName (MethName self method))) - (EnsureFnLoaded methName) - (MOVEITEM file methName 'METHODS]) - -(Method ((Class MoveToFile!) self file fromfiles) (* ; "smL 11-Apr-86 14:49") + (for method in (_ self ListAttribute 'METHODS) do (* First make sure we have the source + loaded) + (LET ((methName (MethName self method))) + (EnsureFnLoaded methName) + (MOVEITEM file methName 'METHODS]) + +(Method ((Class MoveToFile!) self file fromfiles) (* ; "smL 11-Apr-86 14:49") "Move this class and all its subs to file" (if (OR file (SETQ file (SelectFile))) then (_ self MoveToFile file) - (for s in (_ self ListAttribute 'Subs) - when [OR (NOT fromfiles) - (for F in fromfiles thereis (MEMBER s (FILECOMSLST - F - 'CLASSES] - do (_ ($! s) - MoveToFile! file)))) - -(Method ((Class New) self name arg1 arg2 arg3 arg4 arg5) (* ; "smL 22-May-86 14:30") + (for s in (_ self ListAttribute 'Subs) + when [OR (NOT fromfiles) + (for F in fromfiles thereis (MEMBER s (FILECOMSLST F 'CLASSES] + do (_ ($! s) + MoveToFile! file)))) + +(Method ((Class New) self name arg1 arg2 arg3 arg4 arg5) (* ; "smL 22-May-86 14:30") "Creates an instance of a particular class. The variable name if given is used to name the object." (_ (_ self CreateInstance) NewInstance name arg1 arg2 arg3 arg4 arg5)) -(Method ((Class NewClass) self init1 init2 init3) (* ; "dgb: 22-SEP-83 14:19") +(Method ((Class NewClass) self init1 init2 init3) (* ; "dgb: 22-SEP-83 14:19") "Just returns newly created class" self) -(Method ((Class NewWithValues) self description) (* ; "smL 25-Apr-86 14:30") +(Method ((Class NewWithValues) self description) (* ; "smL 25-Apr-86 14:30") "Create a new instance of the class, with initial IV values given by the description." (NewWithValues self description)) -(Method ((Class Old) self fileSource) (* ; "smL 19-May-86 19:14") +(Method ((Class Old) self fileSource) (* ; "smL 19-May-86 19:14") "Find an old object or create a new one with this uid" [LET ((names (CAR fileSource))) (NewObject self (COND @@ -1722,32 +1705,30 @@ verboseFlg is T. Sets it to T for Class and Object" (otherCategories (LDIFFERENCE allCategories okCategories)) (selectors (_ self SelectorsInCategories okCategories okSelectors))) (if (OR (AND (NULL okSelectors) - (NULL includeGenerics?)) - (AND (NULL selectors) - (NULL otherCategories))) + (NULL includeGenerics?)) + (AND (NULL selectors) + (NULL otherCategories))) then (PROMPTPRINT "No methods for class" self) else (LET ((selector (NiceMenu (NCONC selectors - [for cat in otherCategories - collect (LIST (CONCAT "** " cat - " category" " **") - (KWOTE (LIST cat] - (if includeGenerics? - then '[("** Generic methods **" - '(*generics*] - else NIL)) - title))) - (if (LITATOM selector) - then selector - elseif (EQ (CAR selector) - '*generics*) - then (_ self PickSelector title okCategories - [SORT (LDIFFERENCE (_ self ListAttribute! 'Methods NIL - T) - (_ self ListAttribute! 'Methods)]) - else (_ self PickSelector title (LIST (CAR selector)) - okSelectors)]) - -(Method ((Class Prototype) self newProtoFlg) (* ; "smL 4-Dec-85 15:43") + [for cat in otherCategories + collect (LIST (CONCAT "** " cat " category" " **" + ) + (KWOTE (LIST cat] + (if includeGenerics? + then '[("** Generic methods **" '(*generics*] + else NIL)) + title))) + (if (LITATOM selector) + then selector + elseif (EQ (CAR selector) + '*generics*) + then (_ self PickSelector title okCategories + [SORT (LDIFFERENCE (_ self ListAttribute! 'Methods NIL T) + (_ self ListAttribute! 'Methods)]) + else (_ self PickSelector title (LIST (CAR selector)) + okSelectors)]) + +(Method ((Class Prototype) self newProtoFlg) (* ; "smL 4-Dec-85 15:43") "Find an instance of class on CV Prototype, or create an puts one there. Used to send messages for effect to a prototype object If newProtoFlg=T then make sure a new prototype is created" (PROG (proto descr) @@ -1759,7 +1740,7 @@ effect to a prototype object If newProtoFlg=T then make sure a new prototype is (PutCVHere self 'Prototype (SETQ proto (_ self CreateInstance)] (RETURN proto))) -(Method ((Class Rename) self newName) (* ; "smL 31-Oct-86 09:48") +(Method ((Class Rename) self newName) (* ; "smL 31-Oct-86 09:48") "Same as SetName. Classes can have only one name" (until (NOT (NULL newName)) do (SETQ newName (HELPCHECK "Can't rename a class without specifying name. Type RETURN ' @@ -1768,17 +1749,17 @@ to continue and rename class: " self))) (SELFNAMECATMETHODS (_ self SelectorsInCategories oldName))) (_ self SetName newName) (UNMARKASCHANGED oldName 'CLASSES) (* ; "so it won't show up in (FILES?)") - (for S in SELFNAMECATMETHODS do (_ self ChangeMethodCategory S - (DSUBST newName oldName - (_ self MethodCategories S)))]) + (for S in SELFNAMECATMETHODS do (_ self ChangeMethodCategory S (DSUBST newName oldName + (_ self + MethodCategories + S)))]) -(Method ((Class RenameMethod) self oldSelector newSelector) - (* ; "dgb: 18-MAR-83 16:30") +(Method ((Class RenameMethod) self oldSelector newSelector) (* ; "dgb: 18-MAR-83 16:30") "Rename selector, and change function name" (RenameMethod (GoodClassName self) oldSelector newSelector)) -(Method ((Class ReplaceSupers) self supers) (* ; "dgb: 27-AUG-82 13:05") +(Method ((Class ReplaceSupers) self supers) (* ; "dgb: 27-AUG-82 13:05") "replace supers of class by new supers list" (OR (EQ 'NoUpdateRequired (InstallSupers self supers)) (ChangedClass self))) @@ -1791,29 +1772,27 @@ to continue and rename class: " self))) (SORT (for sel inside (OR okSelectors (_ self ListAttribute 'Selectors)) when (LET ((cat (@ (GetMethodObj! self sel) - category))) - (if (EQMEMB 'Any okCategories) - then (* ; "every method is in category Any") - T - elseif (AND (EQMEMB 'Public okCategories) - (NOT (EQMEMB 'Internal cat))) - then (* ; - "Public matches all except Internal") - T - elseif [NOT (NULL (for c inside cat - thereis (EQMEMB c okCategories] - then (* ; - "A category for the selector is present in the list of okCategories") - T)) collect sel))) - -(Method ((Class SelectorsWithBreak) self) (* ; "smL 15-Mar-85 19:07") + category))) + (if (EQMEMB 'Any okCategories) + then (* ; "every method is in category Any") + T + elseif (AND (EQMEMB 'Public okCategories) + (NOT (EQMEMB 'Internal cat))) + then (* ; + "Public matches all except Internal") + T + elseif [NOT (NULL (for c inside cat thereis (EQMEMB c okCategories] + then (* ; + "A category for the selector is present in the list of okCategories") + T)) collect sel))) + +(Method ((Class SelectorsWithBreak) self) (* ; "smL 15-Mar-85 19:07") "Returns a list of selectors whose implementations have a BREAK" (for fn bind pos (cn _ (CONCAT (ClassName self) - ".")) in BROKENFNS first (SETQ pos - (ADD1 (NCHARS cn))) + ".")) in BROKENFNS first (SETQ pos (ADD1 (NCHARS cn))) when (STRPOS cn fn 1 NIL T) collect (SUBATOM fn pos))) -(Method ((Class SetName) self newClassName) (* ; "smL 12-May-87 18:40") +(Method ((Class SetName) self newClassName) (* ; "smL 12-May-87 18:40") "Change the newClassName of the class, forgetting old name. Change the names of all methods which are of the form oldName.selector" (LET* [(oldName (ClassName self)) @@ -1826,26 +1805,26 @@ of the form oldName.selector" (T (_ self UnSetName oldName) (NameEntity self newClassName) (replace className of self with newClassName) - (for class in (fetch subClasses of self) - do (change (fetch className of class) - (DSUBST newClassName oldName DATUM)) + (for class in (fetch subClasses of self) do (change (fetch className of class) + (DSUBST newClassName oldName DATUM) + ) when (LISTP (fetch className of class))) (ChangedClass self) (for file in files do (ADDTOFILE newClassName 'CLASSES file) - (OR [NLSETQ (EDITCALLERS oldName file `((ORR (R ($ %, oldName) - ($ %, newClassName)) - NIL] - (printout NIL T "Can't rename " oldName " to " newClassName " on file " - file T))) + (OR [NLSETQ (EDITCALLERS oldName file `((ORR (R ($ %, oldName) + ($ %, newClassName)) + NIL] + (printout NIL T "Can't rename " oldName " to " newClassName " on file " file + T))) (for selector in (_ self ListAttribute 'Selectors) do (_ ($! (MethName oldName selector)) - ChangeClassName newClassName)) + ChangeClassName newClassName)) (if (_ self Subclass ($ IndexedObject)) then (RenameIndexList oldName newClassName)) self)))) -(Method ((Class Specialize) self newName) (* ; "mjs: 21-FEB-83 07:57") +(Method ((Class Specialize) self newName) (* ; "mjs: 21-FEB-83 07:57") "Creates a class with name newName with self as its only super. If newName is NIL, then makes up an unused name consisting of current name followed by integer" [OR newName (PROG ((N 0) @@ -1856,44 +1835,42 @@ unused name consisting of current name followed by integer" (_ (Class self) New newName (LIST (ClassName self)))) -(Method ((Class SpecializeMethod) self selector file) (* ; "smL 30-Oct-86 18:13") +(Method ((Class SpecializeMethod) self selector file) (* ; "smL 30-Oct-86 18:13") "Specialize method for selector given" (* ;; "First, get the selector that we should work on") (if (NULL selector) then (SETQ selector (_ self PickSelector (CONCAT "SpecializingMethod: " (ClassName self)) - NIL - [SORT (LDIFFERENCE (_ self ListAttribute! 'Methods) - (_ self ListAttribute 'Methods)] - T))) + NIL + [SORT (LDIFFERENCE (_ self ListAttribute! 'Methods) + (_ self ListAttribute 'Methods)] + T))) (* ;; "Now specialize it") [if selector then (LET [(superMethodObj (if (FetchMethod self selector) - then (for class in (Supers self) - thereis (GetMethodObj class selector) - finally (RETURN (GetMethodObj class - selector] - (if superMethodObj - then (DefineMethod self selector (COPY (@ superMethodObj args)) - [COPY `(,(OR (@ superMethodObj doc) - (CONCAT "Specialization")) - (_Super self ,selector - ,@(COPY (@ superMethodObj args)))] - file) - (change (@ (GetMethodObj self selector) - category) - (@ superMethodObj category)) - (_ self EditMethod selector) - else (PROMPTPRINT "No method for selector"]) - -(Method ((Class SubClasses) self) (* ; "smL 11-Oct-85 16:29") + then (for class in (Supers self) thereis (GetMethodObj class + selector) + finally (RETURN (GetMethodObj class selector] + (if superMethodObj + then (DefineMethod self selector (COPY (@ superMethodObj args)) + [COPY `(,(OR (@ superMethodObj doc) + (CONCAT "Specialization")) + (_Super self ,selector ,@(COPY (@ superMethodObj args)))] + file) + (change (@ (GetMethodObj self selector) + category) + (@ superMethodObj category)) + (_ self EditMethod selector) + else (PROMPTPRINT "No method for selector"]) + +(Method ((Class SubClasses) self) (* ; "smL 11-Oct-85 16:29") "Returns a list of immediate subclasses currently known for this class." (COPY (fetch subClasses of self))) -(Method ((Class Subclass) self super) (* ; "smL 18-Mar-85 14:14") +(Method ((Class Subclass) self super) (* ; "smL 18-Mar-85 14:14") "Is self a subclass of super? If it is, return super, else NIL." (MapSupersForm (COND ((EQ class superClass) @@ -1901,7 +1878,7 @@ unused name consisting of current name followed by integer" self (superClass (GetClassRec super)))) -(Method ((Class TraceMethod) self selector) (* ; "smL 8-Apr-87 19:38") +(Method ((Class TraceMethod) self selector) (* ; "smL 8-Apr-87 19:38") "Trace selected method, or give choice if selector is NIL" [SETQ selector (OR selector (_ self PickSelector (CONCAT "Trace Method: " (ClassName self)) NIL @@ -1912,52 +1889,49 @@ unused name consisting of current name followed by integer" selector] (T 'NothingTraced))) -(Method ((Class UnSetName) self name) (* ; "smL 8-Apr-87 13:14") +(Method ((Class UnSetName) self name) (* ; "smL 8-Apr-87 13:14") "Unname entity" [LET ((names (DeleteObjectName self name))) (if names - then (for name inside names - collect (LET [(files (WHEREIS name 'CLASSES] - (UNMARKASCHANGED name 'CLASSES) - (if files - then (DELFROMFILES name 'CLASSES files) - else T]) - -(Method ((DestroyedClass Destroy) self) (* ; "edited: 20-Dec-84 11:31") + then (for name inside names collect (LET [(files (WHEREIS name 'CLASSES] + (UNMARKASCHANGED name 'CLASSES) + (if files + then (DELFROMFILES name 'CLASSES files) + else T]) + +(Method ((DestroyedClass Destroy) self) (* ; "edited: 20-Dec-84 11:31") "you don't have to do anything to destroy a destroyed class" self) -(Method ((DestroyedClass Destroy!) self) (* ; "edited: 19-Dec-84 09:21") +(Method ((DestroyedClass Destroy!) self) (* ; "edited: 19-Dec-84 09:21") "Similar to DestroyedObject.Destroy! -- Nothing to do once one is dstroyed" self) -(Method ((DestroyedClass DestroyClass) self classToDestroy) - (* ; "smL 21-May-86 11:35") +(Method ((DestroyedClass DestroyClass) self classToDestroy) (* ; "smL 21-May-86 11:35") "Destroy the class specified by smashing its contents" (* ; - "First delete from knowledge of file system") + "First delete from knowledge of file system") (DELDEF (ClassName classToDestroy) 'CLASSES) (* ; - "Remove from subClasses lists of each super.") - (for super in-supers-of classToDestroy - do (replace subClasses of super with (for sub in DATUM - when (NEQ classToDestroy - (COND - ((LISTP sub) - (CAR sub)) - (T sub))) collect - sub))) + "Remove from subClasses lists of each super.") + (for super in-supers-of classToDestroy do (replace subClasses of super + with (for sub in DATUM + when (NEQ classToDestroy (COND + ((LISTP sub) + (CAR sub)) + (T sub))) + collect sub))) (* ; - "smash back pointer to the list of vars and var descriptions") + "smash back pointer to the list of vars and var descriptions") (replace otherClassDescription of classToDestroy with NIL) (replace VARNAMES of classToDestroy with NIL) - (replace VARDESCRS of classToDestroy with NIL)(* ; - "It is a classToDestroy so smash its list of subs and Supers") + (replace VARDESCRS of classToDestroy with NIL) (* ; + "It is a classToDestroy so smash its list of subs and Supers") (replace supers of classToDestroy with (LIST ($ DestroyedObject))) (replace metaClass of classToDestroy with ($ DestroyedClass)) (DeleteObjectUID classToDestroy) 'DestroyedClass) -(Method ((DestroyedClass DestroyInstance) class self) (* ; "smL 21-May-86 11:21") +(Method ((DestroyedClass DestroyInstance) class self) (* ; "smL 21-May-86 11:21") "smash back pointer to entity rec, the list of vars and var descriptions" (replace class of self with ($ DestroyedObject)) (replace iNames of self with NIL) @@ -1965,59 +1939,54 @@ unused name consisting of current name followed by integer" (replace otherIVs of self with NIL) (DeleteObjectUID self)) -(Method ((DestroyedClass SubClasses) self) (* ; "dgb: 5-OCT-83 07:56") +(Method ((DestroyedClass SubClasses) self) (* ; "dgb: 5-OCT-83 07:56") "Non subclasses" NIL) -(Method ((DestroyedObject Destroy!) self) (* ; "dgb: 27-MAY-83 11:44") +(Method ((DestroyedObject Destroy!) self) (* ; "dgb: 27-MAY-83 11:44") "Do nothing. I am already destroyed" self) -(Method ((MetaClass CreateClass) self name supers) (* ; "dgb: 22-SEP-83 14:17") +(Method ((MetaClass CreateClass) self name supers) (* ; "dgb: 22-SEP-83 14:17") "Create the data object for a class, checking the inputs" (DefineClass name supers self)) -(Method ((MetaClass DestroyInstance) classToDestroy) (* ; "smL 21-May-86 11:36") +(Method ((MetaClass DestroyInstance) classToDestroy) (* ; "smL 21-May-86 11:36") "Destroy the class specified by smashing its contents" (* ; - "First delete from knowledge of file system") + "First delete from knowledge of file system") (DELDEF (ClassName classToDestroy) 'CLASSES) (* ; - "Remove from subClasses lists of each super.") - (for superName in (_ classToDestroy ListAttribute 'Supers) bind super - when (SETQ super (GetClassRec superName)) - do (replace subClasses of super with (for sub - in (fetch subClasses - of super) - when (NEQ classToDestroy - (COND - ((LISTP sub) - (CAR sub)) - (T sub))) collect - sub))) + "Remove from subClasses lists of each super.") + (for superName in (_ classToDestroy ListAttribute 'Supers) bind super when (SETQ super + (GetClassRec superName + )) + do (replace subClasses of super with (for sub in (fetch subClasses of super) + when (NEQ classToDestroy (COND + ((LISTP sub) + (CAR sub)) + (T sub))) collect sub))) (* ; - "smash back pointer to entity rec, the list of vars and var descriptions") + "smash back pointer to entity rec, the list of vars and var descriptions") (replace otherClassDescription of classToDestroy with NIL) (replace VARNAMES of classToDestroy with NIL) - (replace VARDESCRS of classToDestroy with NIL)(* ; - "It is a classToDestroy so smash its list of subs and Supers") + (replace VARDESCRS of classToDestroy with NIL) (* ; + "It is a classToDestroy so smash its list of subs and Supers") (replace supers of classToDestroy with (LIST ($ DestroyedObject))) (replace metaClass of classToDestroy with ($ DestroyedClass)) (DeleteObjectUID classToDestroy) 'DestroyedClass) -(Method ((MetaClass New) self name supers init1 init2 init3) - (* ; "dgb: 22-SEP-83 14:20") +(Method ((MetaClass New) self name supers init1 init2 init3) (* ; "dgb: 22-SEP-83 14:20") "New method for MetaClass. Since MetaClass is its own metaClass, this needs to work correctly whether the self is Class or MetaClass or a subClass of MetaClass. Work is done by DefineClass in LOOPS." (_ (_ self CreateClass name supers) NewClass init1 init2 init3)) -(Method ((MetaClass NewWithValues) self selector superFlg) - (* ; "smL 25-Apr-86 14:32") +(Method ((MetaClass NewWithValues) self selector superFlg) (* ; "smL 25-Apr-86 14:32") "Create a new class, filled in with the given descriptor" (NewWithValues self selector superFlg)) -(Method ((Method ChangeClassName) self newClassName) (* ; "smL 14-Feb-86 16:06") +(Method ((Method ChangeClassName) self newClassName) (* ; "smL 14-Feb-86 16:06") "Change name of class -- called when className is changed" (PROG (newMethName (oldMethName (GetObjectName self)) (selector (@ selector))) @@ -2030,7 +1999,7 @@ the self is Class or MetaClass or a subClass of MetaClass. Work is done by Defin [LET* [[def (GETDEF oldMethName 'METHOD-FNS NIL '(NOCOPY] (args (COND ((LISTP (CAADR def)) (* ; - "new form for Methods. (Method (ClassName selector) . args)") + "new form for Methods. (Method (ClassName selector) . args)") (CDADR def)) (T (CAR def] (_ (GetClassRec newClassName) @@ -2054,7 +2023,7 @@ the self is Class or MetaClass or a subClass of MetaClass. Work is done by Defin (LET [(files (WHEREIS oldMethName 'METHODS] (UNMARKASCHANGED (@ method) 'METHODS) (* ; - "So old method won't show up in (FILES?)") + "So old method won't show up in (FILES?)") (_ self UnSetName oldMethName) (_ self SetName newMethName) (FlushMethodCache) @@ -2063,22 +2032,22 @@ the self is Class or MetaClass or a subClass of MetaClass. Work is done by Defin (for file in files do (ADDTOFILE newMethName 'METHODS file)) self)) -(Method ((Method DelFromFile) self) (* ; "smL 8-Apr-87 13:06") +(Method ((Method DelFromFile) self) (* ; "smL 8-Apr-87 13:06") "Delete from a file as a method" (LET [(files (WHEREIS (GetObjectName self) 'METHODS] (if files then (DELFROMFILES (GetObjectName self) - 'METHODS files) + 'METHODS files) else T))) -(Method ((Method EditMethod) self) (* ; "dgb: 27-NOV-83 16:28") +(Method ((Method EditMethod) self) (* ; "dgb: 27-NOV-83 16:28") "Edit the method defintion" (_ ($! (@ className)) EditMethod (@ selector))) -(Method ((Method FileOut) self file) (* ; "dgb: 30-OCT-83 11:24") +(Method ((Method FileOut) self file) (* ; "dgb: 30-OCT-83 11:24") "Print out filesource for methods" (PROG (pos (source (_ self MakeFileSource))) (printout file "(" .FONT DEFAULTFONT .P2 (CAR source) @@ -2091,7 +2060,7 @@ the self is Class or MetaClass or a subClass of MetaClass. Work is done by Defin ")" T)) self) -(Method ((Method MakeFileSource) self) (* ; "smL 19-Aug-86 15:01") +(Method ((Method MakeFileSource) self) (* ; "smL 19-Aug-86 15:01") "Return a form that will redefine the method object when read back in from a file - The form is (METH . )" (LET ((className (ClassName self)) (name (GetObjectName self)) @@ -2105,7 +2074,7 @@ the self is Class or MetaClass or a subClass of MetaClass. Work is done by Defin [COND ([AND (EQ name (@ method)) (NULL (CDDR (FASSOC 'method source] (* ; - "Has default name and no properties") + "Has default name and no properties") (SETQ source (DELASSOC 'method source] (CONS 'METH (NCONC (LIST (@ className) (@ selector) @@ -2113,12 +2082,12 @@ the self is Class or MetaClass or a subClass of MetaClass. Work is done by Defin (@ doc)) source)))) -(Method ((Method ObjectModified) self name reason) (* ; "smL 21-Aug-86 10:40") +(Method ((Method ObjectModified) self name reason) (* ; "smL 21-Aug-86 10:40") "sent when self modified in any way" (MARKASCHANGED (OR name (GetObjectName self)) 'METHODS reason)) -(Method ((Method OldInstance) self) (* ; "smL 27-Sep-85 11:20") +(Method ((Method OldInstance) self) (* ; "smL 27-Sep-85 11:20") "Adds Method to those known in class." (LET ((class (GetClassRec (@ className))) methClass) @@ -2136,18 +2105,17 @@ Cannot add method to class. Type OK to create class and go on.") methClass) (_ self ChangeClass methClass)))) -(Method ((Method UnSetName) self name) (* ; "smL 8-Apr-87 13:16") +(Method ((Method UnSetName) self name) (* ; "smL 8-Apr-87 13:16") "Unname entity" [LET ((names (DeleteObjectName self name))) (if names - then (for name inside names - collect (LET [(files (WHEREIS names 'METHODS] - (UNMARKASCHANGED name 'METHODS) - (if files - then (DELFROMFILES name 'METHODS files) - else T]) - -(Method ((Object ChangeClass) self newClass) (* ; "dgb: 16-May-84 20:16") + then (for name inside names collect (LET [(files (WHEREIS names 'METHODS] + (UNMARKASCHANGED name 'METHODS) + (if files + then (DELFROMFILES name 'METHODS files) + else T]) + +(Method ((Object ChangeClass) self newClass) (* ; "dgb: 16-May-84 20:16") "Change object to be new class, keeping old IVs" (PROG [(source (IVSource self)) (classRec (COND @@ -2159,41 +2127,39 @@ Cannot add method to class. Type OK to create class and go on.") (_ self OldInstance)) self) -(Method ((Object Class) self) (* ; "dgb: 27-AUG-82 13:07") +(Method ((Object Class) self) (* ; "dgb: 27-AUG-82 13:07") "Returns class of object" (Class self)) -(Method ((Object ClassName) self) (* ; "smL 25-Apr-86 14:28") +(Method ((Object ClassName) self) (* ; "smL 25-Apr-86 14:28") "Get the name of the class of self" (ClassName self)) -(Method ((Object ConformToClass) self) (* ; "smL 11-Apr-86 15:07") +(Method ((Object ConformToClass) self) (* ; "smL 11-Apr-86 15:07") "Make object have only those IVs that are defined in class" (FillInst (for descr in (IVSource self) bind (ivs _ (_ (Class self) - ListAttribute! - 'IVS)) - when (FMEMB (CAR descr) - ivs) collect descr) + ListAttribute! + 'IVS)) when (FMEMB (CAR descr) + ivs) collect descr) (BlankInstance NIL self))) -(Method ((Object DelFromFile) self) (* ; "smL 8-Apr-87 13:07") +(Method ((Object DelFromFile) self) (* ; "smL 8-Apr-87 13:07") "Remove object from any file it is on" (if (OR (HasUID? self) - (GETHASH self ObjNameTable)) - then (for name in (GetObjectNames self) - do (LET [(files (WHEREIS name 'INSTANCES] - (if files - then (DELFROMFILES name 'INSTANCES files) - else T))) - else (* No names, so can't be on any file) - NIL)) - -(Method ((Object Destroy) self) (* ; "dgb: 26-DEC-83 22:44") + (GETHASH self ObjNameTable)) + then (for name in (GetObjectNames self) do (LET [(files (WHEREIS name 'INSTANCES] + (if files + then (DELFROMFILES name 'INSTANCES files) + else T))) + else (* No names, so can't be on any file) + NIL)) + +(Method ((Object Destroy) self) (* ; "dgb: 26-DEC-83 22:44") "All the work is normally done by the class in DestroyInstance" (_ (Class self) DestroyInstance self)) -(Method ((Object Destroy!) self) (* ; "dgb: 28-Jan-85 22:35") +(Method ((Object Destroy!) self) (* ; "dgb: 28-Jan-85 22:35") "Same as Object.Destroy except when self is a class" (_ self Destroy)) @@ -2202,40 +2168,38 @@ Cannot add method to class. Type OK to create class and go on.") "Message form of DoMethod. Maximum of 10 arguments allowed" (DoMethod self selector class arg1 arg2 arg3 arg4 arg5 arg6 arg7 arg8 arg9 arg10)) -(Method ((Object Edit) self commands) (* ; "dgb: 4-OCT-83 11:34") +(Method ((Object Edit) self commands) (* ; "dgb: 4-OCT-83 11:34") "Use Interlisp editor on source of object" (LET ((EDITSOURCE (_ self MakeEditSource))) (if EDITSOURCE then (EDITE EDITSOURCE commands (OR (GetObjectName self) - self) - 'INSTANCES - 'ChangeEditedInstance) + self) + 'INSTANCES + 'ChangeEditedInstance) else (PROMPTPRINT self "has no IVs, can't edit"))) self) -(Method ((Object FileOut) self file) (* ; "dgb: 30-OCT-83 11:25") +(Method ((Object FileOut) self file) (* ; "dgb: 30-OCT-83 11:25") "Print out file source on file so it can be reread" (PROG ((source (_ self MakeFileSource)) pos) (if PRETTYFLG then + (* ;; "Pretty-print it") - (* ;; "Pretty-print it") - - (* ;; "Always bold the third thing in the source. Assume first is a function to install instance e.g. DEFINST and second is a clasName The third is a critical identifier.") + (* ;; "Always bold the third thing in the source. Assume first is a function to install instance e.g. DEFINST and second is a clasName The third is a critical identifier.") - (printout file "(" .FONT DEFAULTFONT .P2 (CAR source) - %,) - (SETQ pos (POSITION file)) - (printout file .P2 (CADR source) - .FONT LAMBDAFONT %, .P2 (CADDR source) - .FONT DEFAULTFONT .TAB pos .PPVTL (CDDDR source) - ")" T) + (printout file "(" .FONT DEFAULTFONT .P2 (CAR source) + %,) + (SETQ pos (POSITION file)) + (printout file .P2 (CADR source) + .FONT LAMBDAFONT %, .P2 (CADDR source) + .FONT DEFAULTFONT .TAB pos .PPVTL (CDDDR source) + ")" T) else + (* ;; "Don't pretty-print it") - (* ;; "Don't pretty-print it") - - (printout file .P2 source T))) + (printout file .P2 source T))) self) (Method ((Object HasAttribute) self type name propname) @@ -2247,11 +2211,10 @@ Cannot add method to class. Type OK to create class and go on.") [OR (NULL propname) (WithIVPropDescr self name [LAMBDA (self name propDescr) (AND propDescr (for pList - on (fetch IVPropList - of propDescr) + on (fetch IVPropList of propDescr + ) by (CDDR pList) - thereis (EQ propname - (CAR pList] + thereis (EQ propname (CAR pList] (LAMBDA (self name) NIL] T)) @@ -2260,10 +2223,10 @@ Cannot add method to class. Type OK to create class and go on.") (index (FindIndex name (fetch cvNames of class] (AND index [OR (NULL propname) (for tail on (CDR (GetNth (fetch cvDescrs of class) - index)) by (CDDR tail) + index)) by (CDDR tail) do (COND - ((EQ propname (CAR tail)) - (RETURN T] + ((EQ propname (CAR tail)) + (RETURN T] T))) (_ (Class self) HasAttribute type name propname))) @@ -2282,27 +2245,25 @@ property, then an IV is automatically created..." [PROG (fixedName) Loop (* If the IV is now defined in the class, copy it down to the instance. - This can happen if the class was changed after the instance was created.) + This can happen if the class was changed after the instance was created.) (COND ((FMEMB varName (_ (Class self) ListAttribute! 'IVs)) (FillIVs self (Class self) - (for ivDescr in (IVSource self) when (NOT (EQLENGTH ivDescr 1)) - collect ivDescr) + (for ivDescr in (IVSource self) when (NOT (EQLENGTH ivDescr 1)) collect ivDescr) T) (GO Finish))) (* If there is a CV by that name, use it instead of the IV. - The method of use is determined by the %:allocation CVProp, one of - dynamicCached, dynamic, or class. In that case, the initial value is determined - by the CVProp %:initForm.) + The method of use is determined by the %:allocation CVProp, one of dynamicCached, + dynamic, or class. In that case, the initial value is determined by the CVProp + %:initForm.) [COND ((_ (Class self) - HasCV varName) (* Use the class variable, as - dictated by its %:allocation - property) + HasCV varName) (* Use the class variable, as dictated + by its %:allocation property) (RETURN (LET ((allocation (GetClassValue self varName '%:allocation)) (initForm (GetClassValue self varName '%:initForm)) initValue) @@ -2319,35 +2280,34 @@ property, then an IV is automatically created..." (APPLY* typeFlg self varName propName)) (SHOULDNT "Error in IVMissing"))) (dynamic (* Create the IV if a put, otherwise - get the class value) + get the class value) (SELECTQ typeFlg ((PutValue PutValueOnly) (CopyCVToIV self varName) (APPLY* typeFlg self varName newValue propName)) (GetValue (if (AND (NULL propName) - (ValueFound initForm)) + (ValueFound initForm)) then (EVAL initForm) - else (GetClassValue self varName propName) - )) + else (GetClassValue self varName propName))) (GetValueOnly (if (AND (NULL propName) - (ValueFound initForm)) + (ValueFound initForm)) then (EVAL initForm) else (GetClassValueOnly self varName - propName))) + propName))) (SHOULDNT "Error in IVMissing"))) (class (SELECTQ typeFlg (PutValue (PutClassValue self varName newValue propName)) (PutValueOnly (PutClassValueOnly self varName newValue propName)) (GetValue (if (AND (NULL propName) - (ValueFound initForm)) + (ValueFound initForm)) then (EVAL initForm) else (GetClassValue self varName propName))) (GetValueOnly (if (AND (NULL propName) - (ValueFound initForm)) + (ValueFound initForm)) then (EVAL initForm) else (GetClassValueOnly self varName - propName))) + propName))) (SHOULDNT "Error in IVMissing"))) (ERROR ":allocation property not one of (dynamic dynamicCached class)" allocation] @@ -2374,37 +2334,34 @@ property, then an IV is automatically created..." (SELECTQ typeFlg (GetValueOnly classValue) (GetValue (* NOTE%: This won't inherit for - NotSetValue inside an activeValue in - a class) + NotSetValue inside an activeValue in a + class) (COND - ((type? annotatedValue classValue) - (* Copy the annotated value down - into the instance and send it the - appropriate msg) + ((type? annotatedValue classValue) (* Copy the annotated value down into + the instance and send it the + appropriate msg) (_AV (\PutValueOnly self varName propName (_AV classValue CopyActiveValue classValue)) GetWrappedValue self varName propName 'IV)) (T classValue))) (PutValueOnly (\PutValueOnly self varName propName newValue)) (PutValue (COND - ((type? annotatedValue classValue) - (* Copy the annotated value down - into the instance and send it the - appropriate msg) + ((type? annotatedValue classValue) (* Copy the annotated value down into + the instance and send it the + appropriate msg) (_AV (\PutValueOnly self varName propName (_AV classValue CopyActiveValue classValue)) PutWrappedValue self varName newValue propName 'IV)) (T (\PutValueOnly self varName propName newValue)))) (SHOULDNT "Error in Put or GetValue")))) -(Method ((Object InstallEditSource) self editedDescription) - (* ; "dgb: 4-OCT-83 11:33") +(Method ((Object InstallEditSource) self editedDescription) (* ; "dgb: 4-OCT-83 11:33") "Blank instance and make it conform to new description" (BlankInstance (Class self) self) (FillInst editedDescription self)) -(Method ((Object InstallFileSource) self fileSource) (* ; "dgb: 13-OCT-83 22:06") +(Method ((Object InstallFileSource) self fileSource) (* ; "dgb: 13-OCT-83 22:06") "Fill the given instance based on expression fileSource read from file, and name it" (NameObject self (LISTP (CAR fileSource) NIL)) @@ -2412,7 +2369,7 @@ property, then an IV is automatically created..." self) self) -(Method ((Object ListAttribute) self type name) (* ; "smL 18-Jun-86 14:05") +(Method ((Object ListAttribute) self type name) (* ; "smL 18-Jun-86 14:05") "For type= IVs, list the iv names in instance. For IVProps lists IV properties for name found in instance. Otherwise lists properties inherited from class" (SELECTQ (U-CASE type) @@ -2423,32 +2380,31 @@ instance. Otherwise lists properties inherited from class" (LAMBDA (self name) NIL]) (IVS (APPEND (if (EQ (fetch ivNames of (Class self)) - (fetch iNames of self)) + (fetch iNames of self)) then (fetch iNames of self) - else (UNION (fetch ivNames of (Class self)) - (fetch iNames of self))) + else (UNION (fetch ivNames of (Class self)) + (fetch iNames of self))) (for vl in (fetch otherIVs of self) collect (CAR vl)))) (_ (Class self) ListAttribute type name))) -(Method ((Object ListAttribute!) self type name verboseFlg) - (* ; "smL 17-Apr-87 10:14") +(Method ((Object ListAttribute!) self type name verboseFlg) (* ; "smL 17-Apr-87 10:14") "Recursive form of ListAttribute for objects. Omits things inherited from Object unless verboseFlg is T." (SELECTQ (U-CASE type) (IVS (_ self ListAttribute type name)) ((IV IVPROPS NIL) - (UNION (_ self ListAttribute type name) + (UNION (_ self ListAttribute type name) (_ (Class self) ListAttribute! type name))) (_ (Class self) ListAttribute! type name verboseFlg))) -(Method ((Object MakeEditSource) self) (* ; "smL 9-Sep-86 09:53") +(Method ((Object MakeEditSource) self) (* ; "smL 9-Sep-86 09:53") "Get a lst showing all instance variables, values, and properties for Editing" (for ivDescr in (IVSource self) collect ivDescr)) -(Method ((Object MakeFileSource) self file) (* ; "smL 20-Dec-84 15:49") +(Method ((Object MakeFileSource) self file) (* ; "smL 20-Dec-84 15:49") "create a list structure source to be dumped on a file" [CONS 'DEFINST (CONS (ClassName self) (CONS (GetObjectNames self) @@ -2464,19 +2420,19 @@ hope)" (correctSelector (\ApplyMethod correctSelector messageArguments)) (T (_Super )]) -(Method ((Object MoveToFile) self file) (* ; "smL 9-Apr-87 15:22") +(Method ((Object MoveToFile) self file) (* ; "smL 9-Apr-87 15:22") "Move this object to a file" (LET [(file (OR file (SelectFile] (if file then (LET ((name (GetObjectName self)) - (uid (UID self))) - [if (AND name (WHEREIS uid 'INSTANCES)) - then (DELFROMFILES uid 'INSTANCES (WHEREIS uid 'INSTANCES] - (MOVETOFILE file (OR name uid) - 'INSTANCES)) + (uid (UID self))) + [if (AND name (WHEREIS uid 'INSTANCES)) + then (DELFROMFILES uid 'INSTANCES (WHEREIS uid 'INSTANCES] + (MOVETOFILE file (OR name uid) + 'INSTANCES)) else (FRESHLINE PROMPTWINDOW) - (printout PROMPTWINDOW "No target file supplied, so nothing moved!") - NIL))) + (printout PROMPTWINDOW "No target file supplied, so nothing moved!") + NIL))) (Method ((Object NewInstance) self name arg1 arg2 arg3 arg4 arg5) (* ; "smL 1-May-86 11:27") @@ -2488,26 +2444,25 @@ hope)" (AND name (_ self SaveInstance name arg1 arg2)) self) -(Method ((Object ObjectModified) self name reason) (* ; "smL 15-Aug-86 16:55") +(Method ((Object ObjectModified) self name reason) (* ; "smL 15-Aug-86 16:55") "sent when self modified in any way" (DECLARE (SPECVARS \Default-Object-Modified-Reason)) (if name then (MARKASCHANGED name 'INSTANCES reason)) self) -(Method ((Object OldInstance) self) (* ; "smL 5-Sep-86 14:26") +(Method ((Object OldInstance) self) (* ; "smL 5-Sep-86 14:26") "Allow fixup of object after reading in." self) -(Method ((Object OnFile) self file) - "See if an instance is on given file. Returns file if none given" +(Method ((Object OnFile) self file) "See if an instance is on given file. Returns file if none given" (LET [(myfile (WHEREIS (ClassName self) 'INSTANCES] (COND (file (MEMB file myfile)) (T myfile)))) -(Method ((Object Rename) self newName oldNames) (* ; "smL 4-Jan-85 16:28") +(Method ((Object Rename) self newName oldNames) (* ; "smL 4-Jan-85 16:28") "Remove old name(s), and give it new name" (* ;; "JRB - made it return self as docmented. Also ") @@ -2521,49 +2476,47 @@ hope)" (ERROR "Not a list of names" oldNames)) (T [if oldNames then (if (NOT (for N in oldNames always (SETQ badName N) - (EQ ($! N) - self))) - then (ERROR "Not a name for self" badName)) + (EQ ($! N) + self))) + then (ERROR "Not a name for self" badName)) else (SETQ oldNames (CDR (REVERSE (GetObjectNames self] [if oldNames - then [SETQ files (for oldName in oldNames - join (PROG1 (WHEREIS oldName 'INSTANCES) - (_ self UnSetName oldName)] + then [SETQ files (for oldName in oldNames join (PROG1 (WHEREIS oldName 'INSTANCES) + (_ self UnSetName oldName)] - (* ;; "And so the oldNames won't show up in (FILES?)...") + (* ;; "And so the oldNames won't show up in (FILES?)...") - (for oldName in oldNames do (UNMARKASCHANGED oldName 'INSTANCES] + (for oldName in oldNames do (UNMARKASCHANGED oldName 'INSTANCES] (_ self SetName newName) (for f in files do (ADDTOFILE newName 'INSTANCES f)) self)))) -(Method ((Object SaveInstance) self name arg1 arg2) (* ; "smL 15-Aug-86 16:23") +(Method ((Object SaveInstance) self name arg1 arg2) (* ; "smL 15-Aug-86 16:23") "Used to save the instance on a file. Justs marks it as changed as a default" (_ self ObjectModified name)) -(Method ((Object SaveInstance?) self file outInstances) (* ; "edited: 26-Oct-84 15:36") +(Method ((Object SaveInstance?) self file outInstances) (* ; "edited: 26-Oct-84 15:36") "Save this instance if referred to by another unless it is already on this list to be saved" [COND ((type? instance self) (NOT (FMEMB self outInstances))) (T (NOT (MEMBER self outInstances]) -(Method ((Object SetName) self name) (* ; "smL 2-Apr-86 14:55") +(Method ((Object SetName) self name) (* ; "smL 2-Apr-86 14:55") "Call on NameEntity" (AND (NameEntity self name) (_ self ObjectModified name)) self) -(Method ((Object UnSetName) self name) (* ; "smL 8-Apr-87 13:13") +(Method ((Object UnSetName) self name) (* ; "smL 8-Apr-87 13:13") "Unname entity" [LET ((names (DeleteObjectName self name))) (if names - then (for name inside names - collect (LET [(files (WHEREIS name 'INSTANCES] - (UNMARKASCHANGED name 'INSTANCES) - (if files - then (DELFROMFILES name 'INSTANCES files) - else T]) + then (for name inside names collect (LET [(files (WHEREIS name 'INSTANCES] + (UNMARKASCHANGED name 'INSTANCES) + (if files + then (DELFROMFILES name 'INSTANCES files) + else T]) (Method ((Tofu MessageNotUnderstood) self selector messageArguments superFlg) (* ; "smL 13-Aug-86 17:28") @@ -2581,7 +2534,7 @@ the default datatype printing mechanism." self selector '--) "not understood"))) -(Method ((Tofu MethodNotFound) self selector) (* ; "smL 5-Aug-86 17:22") +(Method ((Tofu MethodNotFound) self selector) (* ; "smL 5-Aug-86 17:22") "Standard form for calling MessageNotUnderstood" `[CL:LAMBDA (&REST ArgumentsForMessageNotUnderstood) (SendMessageNotUnderstood ArgumentsForMessageNotUnderstood ',selector]) @@ -2590,12 +2543,10 @@ the default datatype printing mechanism." (* ; "smL 16-Oct-85 17:12") "No super method found when starting search from classOfSendingMethod" [if (GETD selector) - then (* ; - "Use the function by the same name") - selector + then (* ; "Use the function by the same name") + selector else `(CL:LAMBDA (&REST ArgumentsForMessageNotUnderstood) - (SendMessageNotUnderstood ArgumentsForMessageNotUnderstood - ',selector T]) + (SendMessageNotUnderstood ArgumentsForMessageNotUnderstood ',selector T]) (\UnbatchMethodDefs) (DEFINEQ @@ -2738,23 +2689,24 @@ the default datatype printing mechanism." (* "FOLLOWING DEFINITIONS EXPORTED")(DECLARE%: EVAL@COMPILE (PUTPROPS \PutValueOnly MACRO [OPENLAMBDA (self varName propName newValue) - (COND - [propName (WithIVPropDescr! self varName - [LAMBDA (self varName propDescr) - (InstPutProp propDescr propName - newValue] - (LAMBDA (self varName) - (SHOULDNT] - (T (WithIVValue self varName - [LAMBDA (self varName oldValue loc) - (ChangeIVValue self varName loc newValue] - (LAMBDA (self varName) - (SHOULDNT]) + (COND + [propName (WithIVPropDescr! self varName [LAMBDA (self varName + propDescr) + (InstPutProp propDescr + propName + newValue] + (LAMBDA (self varName) + (SHOULDNT] + (T (WithIVValue self varName [LAMBDA (self varName oldValue loc) + (ChangeIVValue self varName loc + newValue] + (LAMBDA (self varName) + (SHOULDNT]) ) (* "END EXPORTED DEFINITIONS") - +DONTEVAL@LOAD (FILESLOAD (LOADCOMP) LOOPSDATATYPES LOOPSACTIVEVALUES LOOPSMETHODS) @@ -2770,14 +2722,14 @@ the default datatype printing mechanism." (PUTPROPS LOOPSKERNEL COPYRIGHT ("Venue & Xerox Corporation" 1983 1984 1985 1986 1987 1988 1990 1991 1993)) (DECLARE%: DONTCOPY - (FILEMAP (NIL (4561 30992 (AddCIV 4571 . 5662) (AddCV 5664 . 6514) (AddIV 6516 . 7019) (AllSubClasses -7021 . 7763) (ClassName 7765 . 8441) (CopyCVToIV 8443 . 9734) (CopyDeepDescr 9736 . 11092) ( -CopyInstance 11094 . 12138) (CopyLoopsStruc 12140 . 12445) (DeleteIV 12447 . 13643) (DumpInstanceFacts - 13645 . 16287) (EnsureFnLoaded 16289 . 16734) (FixSelectorSpelling 16736 . 17522) (\LoopsFixSpell -17524 . 18243) (\LoopsDwim 18245 . 19422) (\FixSelectorSpelling 19424 . 21214) (GetMethodObj 21216 . -22387) (GetMethodObj! 22389 . 22887) (IVSublis 22889 . 24616) (METHCOM 24618 . 26062) (MapIVs 26064 . -26701) (MapIVs! 26703 . 27361) (NewWithValues 27363 . 27686) (OldClass 27688 . 27854) ( -SendMessageNotUnderstood 27856 . 28412) (SubsTree 28414 . 28915) (TypeInMethods 28917 . 29756) (WhoHas - 29758 . 30990)) (129494 138002 (MakeMethodMenu 129504 . 131434) (MethodMenuWhenSelectedFn 131436 . -131982) (SelectFile 131984 . 138000))))) + (FILEMAP (NIL (4515 30946 (AddCIV 4525 . 5616) (AddCV 5618 . 6468) (AddIV 6470 . 6973) (AllSubClasses +6975 . 7717) (ClassName 7719 . 8395) (CopyCVToIV 8397 . 9688) (CopyDeepDescr 9690 . 11046) ( +CopyInstance 11048 . 12092) (CopyLoopsStruc 12094 . 12399) (DeleteIV 12401 . 13597) (DumpInstanceFacts + 13599 . 16241) (EnsureFnLoaded 16243 . 16688) (FixSelectorSpelling 16690 . 17476) (\LoopsFixSpell +17478 . 18197) (\LoopsDwim 18199 . 19376) (\FixSelectorSpelling 19378 . 21168) (GetMethodObj 21170 . +22341) (GetMethodObj! 22343 . 22841) (IVSublis 22843 . 24570) (METHCOM 24572 . 26016) (MapIVs 26018 . +26655) (MapIVs! 26657 . 27315) (NewWithValues 27317 . 27640) (OldClass 27642 . 27808) ( +SendMessageNotUnderstood 27810 . 28366) (SubsTree 28368 . 28869) (TypeInMethods 28871 . 29710) (WhoHas + 29712 . 30944)) (127043 135551 (MakeMethodMenu 127053 . 128983) (MethodMenuWhenSelectedFn 128985 . +129531) (SelectFile 129533 . 135549))))) STOP diff --git a/system/LOOPSKERNEL.DFASL b/system/LOOPSKERNEL.DFASL index 209b258540a998dc26f470a2b7178b3b2d3c3327..ae1670485a06584f355284f0439a76584ac5f65e 100644 GIT binary patch literal 99168 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 X{H^?aQ+{5NpQF|zIOLVS_ul^pA1Pnw literal 109570 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

|6P5fn@c#aGvqH8@=bkutv&okY`K&5TT395xYc zJk(S{9j%CV8QSM7sQ?Vz-oD{mp61RS+ElqaU$6P2orN?@IWqM(sAfIoIp=~EJmlc~ z)+kU#{T8MD;#9%H^l%9d!ZZ`M!id>OYgq89*-Q=PO`XD~w92z1AvH#LX$E@`_lsTA zrj(tNis<0^S%7R`%tWpx?vx=({~p!#cM?qSX}6A z(dTSpoNS=O>u8l$t5G=oqHku+W~d?dQ&`Jv@I%!OCa_*KifxG+#VTkIn4E9G=?1hL zkP02_WeLO;$BS<-Mdw~5cLnmpUYd3jX&_QY1bZs)%coH!Lk5edviMNWtP8v<-uyp( z?6F7#_Z#QsGqr!fGodm_Yx#O+C(9P`^yXLl9!CX#{mw0hyZuUlG zIB`il%%vm5cwI$^9{LEH2KDm$ zPi(or@&ZES>S;k8y3a>yHxOA(q>9K`Bw-9Evzfq;$AZTqjo}j*SAKoWnrWO4b0DC6 zI7C2i0SV%Pd9GOrOvX@egmhq(sMm2*e-F=r({RBRtkUD%nuu(RxH0dU$z6J}%U)SP z>`W+9=gO6?yYjG0@bluG`MJz2uFS8^F~{CXKR~$?Jr2%`EejmXA`UF5ET(2*iM^2P zt)$0PjJuD>L2_OsEzBPg)^8_#gjl-pbeySvdU263Eh=goAu}+Bzv={BEH5Pi=|fW0 z7GI~^>#ghB>gn)N%Go!|iG-y!EAMi;TpMY}JCU5FC+VoUIQoFx7$u%ul+6;wn~R=r zg1$%%CQ+3KGVHNKGZAMXO%=K`bpzauO1sI1q|G?$FV@;eBC?3^;xw6S7Zz8uPs9Re z6|;&x&KA}xE;{oA@6#1Ul`c!$<2JdQJ1NhsG1{}-Ow9$Qsu@-Ld*bU6a4PO3I%A#= zVW=%@D66e28;1f(bkn zhR!X<(FbFYoR5=xs;jF?)s0$eqn2vbQX^Z93>{c{hS!XYaruPa>5p_z>MYNqI-`%U zgJ1*&6?#8kK?36Way#o6XUemZ;c~(c0vkIn--8liVXdI*<|)VkF*ZPR0Dp%NyUVW) z_zMG`GT>1I(!t|0iaNHcc_@I84gq0in!%==L$-yu;>`+sB`}n?kb#%1AJE(mBz+x3 zT8QYKT<0#0i7{tjUD?q>PsXPB#_|&J1KDoNT~k16rey{l|ds81NWE zj7X%t$QMl3W3cZv;5q}M2N-JQ56A^06lx)$O*s;kRURg|jR;kHAG*!^a6bv&W}#IU@uM}VB_D!Q`#}mX01CDpX2U0g8c$`u7hPmFe9EZt_%v4I#f>$~nL{kQ zXHJvso}>YHbI1$r@RUdWFsnvxL?(Jz>DS_vF}O4(4rSm;N>7DM@zFg8<$bSxZ3@d4 z`_`t{WOEjLtT!oZ^5hlHl?AnBb*o)?kyEpy?Of5QlrrUGV|aSdjK3#=s$r5CSX*lD zU4q;83g@~~+oRD>3^r_9>Z7_XlR{6f+spzv9D9;XQZw4z%F$@v%2gOkKDK#CUU}^1 zZSIb0nchAbBHDYBeCBehBL?F80{a(veqSR~!xsFG9D b!F=M=Gtmp>loops>sources>LOOPSUID.;2 17549 +(FILECREATED "19-Aug-2022 14:47:13" {DSK}larry>loops>system>LOOPSUID.;2 17366 - :CHANGES-TO (FNS InitializeUIDs) + :CHANGES-TO (VARS LOOPSUIDCOMS) - :PREVIOUS-DATE "17-Mar-2022 16:22:46" {DSK}tmp>loops>sources>LOOPSUID.;1) + :PREVIOUS-DATE " 2-Jun-2022 13:44:04" {DSK}larry>loops>system>LOOPSUID.;1) (* ; " @@ -41,8 +41,6 @@ Copyright (c) 1984-1988, 1990, 2022 by Venue & Xerox Corporation. (* ;;; "Unpacking UIDs for human consumption") (FNS Unpack-UID ConvertFromRadix64) - (DECLARE%: EVAL@COMPILE DONTCOPY (FILES (SYSLOAD) - MATCH)) (* ;;; "Access UID/instance relation") @@ -327,11 +325,6 @@ DONTEVAL@COMPILE DOCOPY c) 48))) finally (RETURN number]) ) -(DECLARE%: EVAL@COMPILE DONTCOPY - -(FILESLOAD (SYSLOAD) - MATCH) -) @@ -427,9 +420,9 @@ DONTEVAL@COMPILE DOCOPY (ADDTOVAR AROUNDEXITFNS \Loops.AroundExit) (PUTPROPS LOOPSUID COPYRIGHT ("Venue & Xerox Corporation" 1984 1985 1986 1987 1988 1990 2022)) (DECLARE%: DONTCOPY - (FILEMAP (NIL (2510 4036 (HasUID? 2520 . 2843) (Make-UID 2845 . 3394) (UID 3396 . 3799) (UIDP 3801 . -4034)) (4471 9445 (InitializeUIDs 4481 . 8685) (RADIX64NUM 8687 . 9443)) (9501 14483 (Unpack-UID 9511 - . 13912) (ConvertFromRadix64 13914 . 14481)) (14603 16692 (GetObjFromUID 14613 . 14894) (PutObjectUID - 14896 . 15308) (DeleteObjectUID 15310 . 15697) (MapObjectUID 15699 . 15915) (UIDHashBits 15917 . -16292) (UIDEqual 16294 . 16690)) (16969 17383 (\Loops.AroundExit 16979 . 17381))))) + (FILEMAP (NIL (2399 3925 (HasUID? 2409 . 2732) (Make-UID 2734 . 3283) (UID 3285 . 3688) (UIDP 3690 . +3923)) (4360 9334 (InitializeUIDs 4370 . 8574) (RADIX64NUM 8576 . 9332)) (9390 14372 (Unpack-UID 9400 + . 13801) (ConvertFromRadix64 13803 . 14370)) (14420 16509 (GetObjFromUID 14430 . 14711) (PutObjectUID + 14713 . 15125) (DeleteObjectUID 15127 . 15514) (MapObjectUID 15516 . 15732) (UIDHashBits 15734 . +16109) (UIDEqual 16111 . 16507)) (16786 17200 (\Loops.AroundExit 16796 . 17198))))) STOP diff --git a/system/LOOPSUID.DFASL b/system/LOOPSUID.DFASL index 94551e93897c57f7456494ed266ed698995ff0bf..e86b79c0869d9162f7daac8a7465c3c6414d4e18 100644 GIT binary patch delta 1472 zcmZ{kUu@G=6vuz}SKDsT4K@m+>n0tN3Cjws8z`gH7TaYD>-y)nP7_H?w{<$#b=|LB zVl|_Ik$}k}hRd)AjEPDlAu&-JNM=Zk=#%kDqH#eW#JC3&6JIp(3C}rqCIXr?J)d*# zx#xV(?Y+J4zvh3(TYhzBIuppIO|ulp&dlTsfkLTJ%uELcW3jlA8VK(`=v!yZ%$Z{u z&%|Ul;~6tE>0)Nw({;cbntR3T+w1drx_Wwhp6TuCUe^~g1|LrAGbhK>rA|!uVESC4 z=%F3x_w?@T!Y!X&DGRZw+M)X_^0f8lj(A1tkb(r6ePE!eEG^nY;qXW(Ngf4d&UP$y zR4vtolCjiKIP&7aaNm#t>Gc&UD(CddqVvB5E-mhQGi)50_y5n-@;Q4!Ov$Rf+ip5w zRtHo5W`9}aWVB}V;1qNUO%q_LNc`xKg(=7#*8`CEp+?8^d@zw*ak5ylw!^F&Oeg$P z<=2{sH4F2Qlh4*pi-qdPwQdWRz3J$$IdekO^h1!Bjdi2lXVKB#rIC%);m~j_O8!Zp z@1>G5)42M?Kr|MfP`| z*u2$!2iL?8DA*Q_L=Q)jUgtRV5Cul+AtqHdMC~FY_0Z0# z=scS{d1W%n_}SdutISi%xY*p=iktPHnJ*%i^;^vEQ}`>!4+yJ_mk2*%yi6z=uMjRU zenP0UeoCm$x=NVfgzJPs#%01ij5iR)2w_i9{7w#o@4Li?VPL}*_#k_b&rv`qLRM{jILuI_H~>#ckrgca|y;K!DXj6{+~1XJIG zL3zs6=30S4^!|PGsSsU@FI`TXL5Wd$+qHB53Pf>1Uwa}Jd?G3lzePPYaM0C`r-u7O zM!&EFZyk~cnlp!1G!5U=kmcb%{KDc?MKtKpVLJjw5N5q#ZUb`*nDt;%^O(Hd+&mF` zTqB+wHnmgJXeiE2g=!kFoEMIu_%0}Jtp@egjktGBYy9ytH0p5-W2=OG$=%tSKz?LO zv5i$eiHCB@ZFUS>+rVgoL?gu2Pqu)K#nWs5U|1-P0_bo~$k~<-`C7|(Q~HtFY3N;$ ZtNzlmNr-m&SL;#77^F3N)*|%a!Qa4vzBB*; delta 1474 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 diff --git a/system/LOOPSUTILITY.DFASL b/system/LOOPSUTILITY.DFASL index 37fc355a998df9fc8826de71c38bf4069bb787d3..259c36848974e0829559a08c15e7713f18afc502 100644 GIT binary patch literal 61198 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 h(H9>^*dXiyY$uW{`QV~cYlXx zjjgxV-PKdb428ML@}l9pC5ddk1&f48EcOsKTKETYCwsYQMvQuXRyH@AS?22b|D{A? z2j?2|`uOCr_C{xu*;-|5vNzc5Z7>JDx>OVuq9|bcdDFaCHN3Z`-nPut6y1#t$2xgU zWP{03Yp|QDtt+we$Z}p8ZK!sd8lZ2r)q>SWYhbO)MyJzeH7zq)oz+&Po<1=j8XC+s zwNBAmZJjyn%H)+1R!?Kk8dtwN24;-5csxCQO`Y9qJevl$&SJLu2&ON7WO9`;64*CV zRAHzzR++|m_=nP1 zVirwF$l?=Y$0YpKu#!cY1sa5>k2PhFQIW&vrd7+v(1n2^Fzf7{5$xGTx38*+0RHKT zR6DW=k00{0dA(V6Hk)g^s2aau4sE~Ckswh?OfF$bPXk7mu!pPCS7{a_;x7=zG*Rd| zZ80_Oep}l*cYA+>yPZJ2T%wdgDV?6l+oLLbJ)8R6)tz1LDIArp?oD_aph7hDO2{Km zR|HcQx2~%3z;190xTXAWzomrnp<}zDpN8zl0=qG43`qay^Tal$i$X|aiFSCKEVlV4 z+@@R)+l+M#^tgNb0u<9*SxxC(Y<5Ktv9QM~W=+YcSRc@QAU^Iw5M_miWNrxdR!xi4 z7{xlptj|y|O+k)IC+0vUnT(5*as{zE%KmJaNv^QW%2y^^#KgF@Xqf%S@Z)P{&l)Gu zk$LQdv2ezo;Cj%;mq(s`(~zj~AuOh9C)?{wXU|k=TB`Y8HD;sD+5}|X3gpNx0B4Vb zDdS*75R`6=gCC89?*d5u{71UX5=>LFU&1qCcGes0Mw`7E8qV-4U5ja%!LqCfa38BT zP4@1?NqX-Pb9IP$ni2EZu;{77;&!2Ry?KcB#$e$};xm!C0Fx{5lZ7Aq!Km^t)qFhB0|r%Vsxmt(>(PG8F7{$=YHV9< zc<)c@GJUhm3bA=sA!GJ8VbRlog$p?U zT}n|~y=uAnDmYsOhm+*{r0z1Aezk<}AfnRZD_>8r3uQ%hSb=yrnDuiR=V#F1#o)BT^3^+ChItNUjnUb69zNRXP(y!~u zt~+OH$Z(^?E%(`pbQxuOS1L0%#(Jga1&cs8&>qlH03RK%Ma`Ezw~HEaR6W8{d5WQu zj-tS+e=1`Bcq~2)#4-^u-4Upg-h-b#0Ft*hWARh38%sY5id^{)V&yaV0n}Hy`&~T9 zv~>3Mh!|@!G)lkK!S5-Ri~!#shTpBiyHs$q3N~>#V$Ark7nglO%&*h)-^kk-OgIQH6N$sK0>kM^|Nb)SDfS92i0UsH;j6EyYd! zIzto?My5CaJ8?1nog<^VH(I;qHIa{Qr#1y?=XFc0ZidQFG z=%~ZvSch8@zvzKSEbR8niQYq@)0`^7IP3yWwEn|&pY83~-WhgwAL`g0I;bP%CG^#I z>-41K>;!~A+grcAW5VhQgSH6?VoE&ANCl5;B8CQc>1P=YYF3MVaufHc~s$HZS<@LlcCCKsI-`7QHXOR zXW0$LC59S~Qud3MS^7LV3Ma$lgf>SJc4^I2R=85}O23B&`Z=7WU+{$@8_d?4N|VLn zfSM6(M3?{AICu~57h7X;*4r96Elz{ev{f{=LZQrS2AP|!4s(^s?&NTk#o!Q~o2?<} z@>+1J`YMOrXffOEeB}mHjoD_!9Dw@Kc~XDC2u1@zmxmtSrM21`>J1h^&*Op%0DO8l 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 GzyA-yt!V-P delta 16366 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 QB2dVx&+StM((k_eE9FI~$^ZZW

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 diff --git a/system/LOOPSMETHODS b/system/LOOPSMETHODS index 453f3f2..2d6bed5 100644 --- a/system/LOOPSMETHODS +++ b/system/LOOPSMETHODS @@ -1,15 +1,14 @@ -(DEFINE-FILE-INFO PACKAGE "IL" READTABLE "INTERLISP" BASE 10) -(FILECREATED " 6-Nov-91 16:29:23" {DSK}RELEASE>loops>2.0>src>LOOPSMETHODS.;3 65027 +(DEFINE-FILE-INFO PACKAGE "INTERLISP" READTABLE "INTERLISP" BASE 10) - changes to%: (FUNCTIONS SubclassResponsibility) - (OPTIMIZERS _ SEND) - (FNS Cached-FetchMethodOrHelp) +(FILECREATED "19-Aug-2022 14:47:13" {DSK}larry>loops>system>LOOPSMETHODS.;2 59350 - previous date%: "15-Aug-91 12:38:42" {DSK}RELEASE>loops>2.0>src>LOOPSMETHODS.;2) + :CHANGES-TO (VARS LOOPSMETHODSCOMS) + + :PREVIOUS-DATE " 6-Nov-91 16:29:23" {DSK}larry>loops>system>LOOPSMETHODS.;1) (* ; " -Copyright (c) 1984, 1985, 1986, 1987, 1988, 1990, 1991 by Venue & Xerox Corporation. All rights reserved. +Copyright (c) 1984-1988, 1990-1991 by Venue & Xerox Corporation. ") (PRETTYCOMPRINT LOOPSMETHODSCOMS) @@ -18,8 +17,9 @@ Copyright (c) 1984, 1985, 1986, 1987, 1988, 1990, 1991 by Venue & Xerox Corporat [ (* ;; " WARNING: YOU MUST SET *Compile-Local-Message-Cache* TO NIL BEFORE COMPILING THIS FILE. Failing to do so, you'll get a Cached-FetchMethodOrHelp that calls itself recursively forever.") - (DECLARE%: EVAL@COMPILE DONTCOPY (FILES (LOADCOMP) - LOOPSSTRUC)) + (DECLARE%: EVAL@COMPILE DONTCOPY DONTEVAL@LOAD (P (SETQ *Compile-Local-Message-Cache* NIL))) + (DECLARE%: DONTEVAL@LOAD EVAL@COMPILE DONTCOPY (FILES (LOADCOMP) + LOOPSSTRUC)) (* ;;; "Translation of METHOD forms to LAMBDA forms") @@ -68,7 +68,11 @@ Copyright (c) 1984, 1985, 1986, 1987, 1988, 1990, 1991 by Venue & Xerox Corporat " WARNING: YOU MUST SET *Compile-Local-Message-Cache* TO NIL BEFORE COMPILING THIS FILE. Failing to do so, you'll get a Cached-FetchMethodOrHelp that calls itself recursively forever." ) -(DECLARE%: EVAL@COMPILE DONTCOPY +(DECLARE%: EVAL@COMPILE DONTCOPY DONTEVAL@LOAD + +(SETQ *Compile-Local-Message-Cache* NIL) +) +(DECLARE%: DONTEVAL@LOAD EVAL@COMPILE DONTCOPY (FILESLOAD (LOADCOMP) LOOPSSTRUC) @@ -100,13 +104,13 @@ Copyright (c) 1984, 1985, 1986, 1987, 1988, 1990, 1991 by Venue & Xerox Corporat `(_ ,self ,selector ,@(for x in args collect (KWOTE x)))) (DEFMACRO _New (class &OPTIONAL (selector NIL selector-supplied-p) - &REST args) + &REST args) (if selector-supplied-p then [LET ((self (GENSYM))) - `(LET ((,self (_ ,class New))) - (DECLARE (LOCALVARS ,self)) - (_ ,self ,selector ,@args) - ,self] + `(LET ((,self (_ ,class New))) + (DECLARE (LOCALVARS ,self)) + (_ ,self ,selector ,@args) + ,self] else `(_ ,class New))) (DEFMACRO _IV (self IVName &REST args) @@ -117,35 +121,35 @@ Copyright (c) 1984, 1985, 1986, 1987, 1988, 1990, 1991 by Venue & Xerox Corporat (DECLARE%: EVAL@COMPILE (PUTPROPS _Proto MACRO ((obj . args) - (_ (_ obj Prototype) . args))) + (_ (_ obj Prototype) . args))) (PUTPROPS _Try MACRO [(obj action . args) - (PROG ((obj% obj)) - (RETURN (DOAPPLY* (OR (FetchMethod (Class obj% ) - 'action) - (RETURN 'NotSent)) - obj% . args]) + (PROG ((obj% obj)) + (RETURN (DOAPPLY* (OR (FetchMethod (Class obj% ) + 'action) + (RETURN 'NotSent)) + obj% . args]) (PUTPROPS _Process MACRO [X (LET [(obj (CAR X)) - (selector (CADR X)) - (args (CONS 'LIST (CDDR X] - `(ADD.PROCESS (LIST 'ApplyMethod (KWOTE ,obj) - (KWOTE ',selector) - (KWOTE ,args)) - 'NAME - ',selector]) + (selector (CADR X)) + (args (CONS 'LIST (CDDR X] + `(ADD.PROCESS (LIST 'ApplyMethod (KWOTE ,obj) + (KWOTE ',selector) + (KWOTE ,args)) + 'NAME + ',selector]) (PUTPROPS _Process! MACRO [X (LET [(obj (CAR X)) - (selector (CADR X)) - (args (CONS 'LIST (CDDR X] - `(ADD.PROCESS (LIST 'ApplyMethod (KWOTE ,obj) - (KWOTE ,selector) - (KWOTE ,args)) - 'NAME - ',selector]) + (selector (CADR X)) + (args (CONS 'LIST (CDDR X] + `(ADD.PROCESS (LIST 'ApplyMethod (KWOTE ,obj) + (KWOTE ,selector) + (KWOTE ,args)) + 'NAME + ',selector]) (PUTPROPS SENDSUPER MACRO ((obj action . args) - (_Super obj action . args))) + (_Super obj action . args))) ) (DEFINEQ @@ -172,99 +176,72 @@ Copyright (c) 1984, 1985, 1986, 1987, 1988, 1990, 1991 by Venue & Xerox Corporat (PUTPROPS DOAPPLY* MACRO (arg (CONS 'CL:FUNCALL arg))) -(PUTPROPS DoMethod MACRO - [(obj action class . args) - (LET ((obj% obj) - (class% class)) - (if (Class? (OR class% (fetch (OBJECT CLASS) of obj% ))) - then (DOAPPLY* (OR (FetchMethod (OR class% (fetch (OBJECT CLASS) - of obj% )) - action) - (ERROR action "not found for DoMethod")) - obj% . args) - else (ERROR (OR class% (fetch (OBJECT CLASS) of obj% )) - "not a class"]) - -(PUTPROPS FetchMethod MACRO [OPENLAMBDA (classRec selector) - (* smL "17-Sep-85 17:45") - (* Returns the function for selector - or NIL) - (PROG ((pos (LLSH (LOGAND 1023 (LOGXOR (\LOLOC classRec) - (\LOLOC selector))) - 3)) - (class classRec) - meth index supers) - (DECLARE (LOCALVARS . T)) - [COND - ((AND (EQ class (\GETBASEPTR - *Global-Method-Cache* pos) - ) - (EQ selector (\GETBASEPTR (\ADDBASE - *Global-Method-Cache* - 2) - pos))) - (RETURN (\GETBASEPTR (\ADDBASE - *Global-Method-Cache* - 4) - pos] - (SETQ supers (fetch (class supers) of - classRec - )) - LP (COND - ((SETQ index (FindSelectorIndex class - selector)) - (SETQ meth (GetNthMethod class index)) - (\PUTBASEPTR *Global-Method-Cache* pos classRec) - (\PUTBASEPTR (\ADDBASE *Global-Method-Cache* 2) - pos selector) - (\PUTBASEPTR (\ADDBASE *Global-Method-Cache* 4) - pos meth) - (RETURN meth)) - ((SETQ class (pop supers)) - (GO LP)) - (T (RETURN NIL]) +(PUTPROPS DoMethod MACRO [(obj action class . args) + (LET ((obj% obj) + (class% class)) + (if (Class? (OR class% (fetch (OBJECT CLASS) of obj% ))) + then (DOAPPLY* (OR (FetchMethod (OR class% (fetch (OBJECT CLASS) + of obj% )) + action) + (ERROR action "not found for DoMethod")) + obj% . args) + else (ERROR (OR class% (fetch (OBJECT CLASS) of obj% )) + "not a class"]) + +(PUTPROPS FetchMethod MACRO [OPENLAMBDA (classRec selector) + (PROG ((pos (LLSH (LOGAND 1023 (LOGXOR (\LOLOC classRec) + (\LOLOC selector))) + 3)) + (class classRec) + meth index supers) + (DECLARE (LOCALVARS . T)) + [COND + ((AND (EQ class (\GETBASEPTR *Global-Method-Cache* pos)) + (EQ selector (\GETBASEPTR (\ADDBASE + *Global-Method-Cache* 2 + ) + pos))) + (RETURN (\GETBASEPTR (\ADDBASE *Global-Method-Cache* 4) + pos] + (SETQ supers (fetch (class supers) of classRec)) + LP (COND + ((SETQ index (FindSelectorIndex class selector)) + (SETQ meth (GetNthMethod class index)) + (\PUTBASEPTR *Global-Method-Cache* pos classRec) + (\PUTBASEPTR (\ADDBASE *Global-Method-Cache* 2) + pos selector) + (\PUTBASEPTR (\ADDBASE *Global-Method-Cache* 4) + pos meth) + (RETURN meth)) + ((SETQ class (pop supers)) + (GO LP)) + (T (RETURN NIL]) (PUTPROPS FindSelectorIndex MACRO [OPENLAMBDA (classrec selector) - (PROG NIL - - (* Prog is only so one can bomb out in case of NIL selectors of class) - - (RETURN (\FindEntryIndex - selector - (OR (fetch (class selectors) - of classrec) - (RETURN]) + (PROG NIL + (RETURN (\FindEntryIndex selector + (OR (fetch (class selectors) of classrec) + (RETURN]) (PUTPROPS GetNthMethod MACRO [OPENLAMBDA (classrec n) - (LET ((meths (fetch (class methods) of classrec)) - ) - (COND - ((LISTP meths) - (GetNth meths n)) - (T (\GetNthEntry meths n]) - -(PUTPROPS MapSupersForm? MACRO ((mappingForm classRec . progArgs) - (* dgb%: "12-JAN-82 14:55") - - (* Maps through a class and its supers in order. - Returns if form has return statement, or NIL when finished %. - form can use class as free variable) - - (PROG (supers (class classRec) . progArgs) - (COND - ((NULL class) - (RETURN NIL))) - (SETQ supers (Supers class)) - LP - mappingForm - (* this is where the substitution - goes) - ON (COND - ((SETQ class (pop supers)) - (* If there is a Super, iterate - around the Loop) - (GO LP))) (* Returns NotSetValue if not found) - (RETURN NotSetValue)))) + (LET ((meths (fetch (class methods) of classrec))) + (COND + ((LISTP meths) + (GetNth meths n)) + (T (\GetNthEntry meths n]) + +(PUTPROPS MapSupersForm? MACRO ((mappingForm classRec . progArgs) + (PROG (supers (class classRec) . progArgs) + (COND + ((NULL class) + (RETURN NIL))) + (SETQ supers (Supers class)) + LP + mappingForm + ON (COND + ((SETQ class (pop supers)) + (GO LP))) + (RETURN NotSetValue)))) ) @@ -275,184 +252,167 @@ Copyright (c) 1984, 1985, 1986, 1987, 1988, 1990, 1991 by Venue & Xerox Corporat (RPAQ? *Compile-Local-Message-Cache* T) (DEFOPTIMIZER _ (object selector &REST args) - [if (AND *Compile-Local-Message-Cache* *BYTECOMPILER-IS-EXPANDING*) - then `(LET [(/\obj/\ ,object) - (*LOOPS-INLINE-METHOD-CACHE* (LOADTIMECONSTANT ( + [if (AND *Compile-Local-Message-Cache* *BYTECOMPILER-IS-EXPANDING*) + then `(LET [(/\obj/\ ,object) + (*LOOPS-INLINE-METHOD-CACHE* (LOADTIMECONSTANT ( \Make-Method-Cache-Entry - ] - (DECLARE (LOCALVARS /\obj/\ *LOOPS-INLINE-METHOD-CACHE*)) - (LOOPS-FUNCALL (COND - ((AND (Object? /\obj/\) - (EQ (\GETBASEPTR - *LOOPS-INLINE-METHOD-CACHE* - 0) - (fetch (OBJECT CLASS) - of /\obj/\))) + ] + (DECLARE (LOCALVARS /\obj/\ *LOOPS-INLINE-METHOD-CACHE*)) + (LOOPS-FUNCALL (COND + ((AND (Object? /\obj/\) + (EQ (\GETBASEPTR *LOOPS-INLINE-METHOD-CACHE* 0 + ) + (fetch (OBJECT CLASS) of /\obj/\))) (* ; "A cache hit") - (\GETBASEPTR *LOOPS-INLINE-METHOD-CACHE* 2) - ) - (T (* ; "A cache miss") - (Cached-FetchMethodOrHelp - /\obj/\ - ',selector *LOOPS-INLINE-METHOD-CACHE*)) - ) - /\obj/\ - ,@args)) - - (* ;; "`((OPENLAMBDA (/\obj/\ *LOOPS-INLINE-METHOD-CACHE*) (DECLARE (LOCALVARS . T)) (CL:FUNCALL (if (AND (Object? /\obj/\) (EQ (\GETBASEPTR *LOOPS-INLINE-METHOD-CACHE* 0) (fetch (OBJECT CLASS) of /\obj/\))) then ; A cache hit (\GETBASEPTR *LOOPS-INLINE-METHOD-CACHE* 2) else ; A cache miss (Cached-FetchMethodOrHelp /\obj/\ ',selector *LOOPS-INLINE-METHOD-CACHE*)) /\obj/\ ,@args)) ,object (LOADTIMECONSTANT (\Make-Method-Cache-Entry)))") - - elseif *BYTECOMPILER-IS-EXPANDING* - then `(LET ((/\obj/\ ,object)) - (DECLARE (LOCALVARS /\obj/\)) - (LOOPS-FUNCALL (FetchMethodOrHelp /\obj/\ - ',selector) - /\obj/\ - ,@args)) - else - (LET* - [(obj (if (LITATOM object) - then object - else (GENSYM))) - [bindings (if (EQ obj object) - then NIL - else `((,obj ,object] - (localVars (for binding in bindings collect (CAR binding] - (if *Compile-Local-Message-Cache* - then - `(LET (,@bindings) - - (* ;; - ",@(if localVars then `((DECLARE (LOCALVARS ,@localVars))) else NIL)") - - (DECLARE (LOCALVARS . T)) - (LOOPS-FUNCALL (LET [(*LOOPS-INLINE-METHOD-CACHE* (LOADTIMECONSTANT - ( + (\GETBASEPTR *LOOPS-INLINE-METHOD-CACHE* 2)) + (T (* ; "A cache miss") + (Cached-FetchMethodOrHelp /\obj/\ + ',selector *LOOPS-INLINE-METHOD-CACHE*))) + /\obj/\ + ,@args)) + + (* ;; "`((OPENLAMBDA (/\obj/\ *LOOPS-INLINE-METHOD-CACHE*) (DECLARE (LOCALVARS . T)) (CL:FUNCALL (if (AND (Object? /\obj/\) (EQ (\GETBASEPTR *LOOPS-INLINE-METHOD-CACHE* 0) (fetch (OBJECT CLASS) of /\obj/\))) then ; A cache hit (\GETBASEPTR *LOOPS-INLINE-METHOD-CACHE* 2) else ; A cache miss (Cached-FetchMethodOrHelp /\obj/\ ',selector *LOOPS-INLINE-METHOD-CACHE*)) /\obj/\ ,@args)) ,object (LOADTIMECONSTANT (\Make-Method-Cache-Entry)))") + + elseif *BYTECOMPILER-IS-EXPANDING* + then `(LET ((/\obj/\ ,object)) + (DECLARE (LOCALVARS /\obj/\)) + (LOOPS-FUNCALL (FetchMethodOrHelp /\obj/\ ',selector) + /\obj/\ + ,@args)) + else + (LET* + [(obj (if (LITATOM object) + then object + else (GENSYM))) + [bindings (if (EQ obj object) + then NIL + else `((,obj ,object] + (localVars (for binding in bindings collect (CAR binding] + (if *Compile-Local-Message-Cache* + then + `(LET (,@bindings) + + (* ;; + ",@(if localVars then `((DECLARE (LOCALVARS ,@localVars))) else NIL)") + + (DECLARE (LOCALVARS . T)) + (LOOPS-FUNCALL (LET [(*LOOPS-INLINE-METHOD-CACHE* (LOADTIMECONSTANT + ( \Make-Method-Cache-Entry - ] + ] (* ;; "This bogus SPECVARS stuff is here to prevent the compiler from thinking that the in-line cache is a quoted constant. Note that (almost) no user code gets called within this binding, so it is pretty safe. (The potential exception is when the user has redefined the FetchMethodOrHelp method).") - (* ;; + (* ;;  "(DECLARE (SPECVARS *LOOPS-INLINE-METHOD-CACHE*))") - (if [AND (Object? ,obj) - (EQ (\GETBASEPTR - *LOOPS-INLINE-METHOD-CACHE* - 0) - (fetch (OBJECT CLASS) - of ,obj] - then - (* ; "A cache hit") - (\GETBASEPTR - *LOOPS-INLINE-METHOD-CACHE* 2) - else - (* ; "A cache miss") - (Cached-FetchMethodOrHelp - ,obj - ',selector *LOOPS-INLINE-METHOD-CACHE*) - )) - ,obj - ,@args)) - elseif bindings - then `(LET (,@bindings) - (DECLARE (LOCALVARS ,@localVars)) - (LOOPS-FUNCALL (FetchMethodOrHelp ,obj - ',selector) - ,obj - ,@args)) - else `(LOOPS-FUNCALL (FetchMethodOrHelp ,obj ',selector) - ,obj - ,@args]) + (if [AND (Object? ,obj) + (EQ (\GETBASEPTR + *LOOPS-INLINE-METHOD-CACHE* 0) + (fetch (OBJECT CLASS) + of ,obj] + then (* ; "A cache hit") + (\GETBASEPTR *LOOPS-INLINE-METHOD-CACHE* 2) + else (* ; "A cache miss") + (Cached-FetchMethodOrHelp ,obj + ',selector *LOOPS-INLINE-METHOD-CACHE* + ))) + ,obj + ,@args)) + elseif bindings + then `(LET (,@bindings) + (DECLARE (LOCALVARS ,@localVars)) + (LOOPS-FUNCALL (FetchMethodOrHelp ,obj ',selector) + ,obj + ,@args)) + else `(LOOPS-FUNCALL (FetchMethodOrHelp ,obj ',selector) + ,obj + ,@args]) (DEFOPTIMIZER SEND (object selector &REST args) - [if (AND *Compile-Local-Message-Cache* *BYTECOMPILER-IS-EXPANDING*) - then `(LET [(/\obj/\ ,object) - (*LOOPS-INLINE-METHOD-CACHE* (LOADTIMECONSTANT ( + [if (AND *Compile-Local-Message-Cache* *BYTECOMPILER-IS-EXPANDING*) + then `(LET [(/\obj/\ ,object) + (*LOOPS-INLINE-METHOD-CACHE* (LOADTIMECONSTANT ( \Make-Method-Cache-Entry - ] - (DECLARE (LOCALVARS /\obj/\ *LOOPS-INLINE-METHOD-CACHE* - )) - (LOOPS-FUNCALL (COND - ((AND (Object? /\obj/\) - (EQ (\GETBASEPTR - *LOOPS-INLINE-METHOD-CACHE* - 0) - (fetch (OBJECT CLASS) - of /\obj/\))) + ] + (DECLARE (LOCALVARS /\obj/\ *LOOPS-INLINE-METHOD-CACHE*)) + (LOOPS-FUNCALL (COND + ((AND (Object? /\obj/\) + (EQ (\GETBASEPTR + *LOOPS-INLINE-METHOD-CACHE* 0) + (fetch (OBJECT CLASS) of /\obj/\))) (* ; "A cache hit") - (\GETBASEPTR *LOOPS-INLINE-METHOD-CACHE* - 2)) - (T - (* ; "A cache miss") - (Cached-FetchMethodOrHelp - /\obj/\ - ',selector - *LOOPS-INLINE-METHOD-CACHE*))) - /\obj/\ - ,@args)) - - (* ;; "`((OPENLAMBDA (/\obj/\ *LOOPS-INLINE-METHOD-CACHE*) (DECLARE (LOCALVARS . T)) (CL:FUNCALL (if (AND (Object? /\obj/\) (EQ (\GETBASEPTR *LOOPS-INLINE-METHOD-CACHE* 0) (fetch (OBJECT CLASS) of /\obj/\))) then ; A cache hit (\GETBASEPTR *LOOPS-INLINE-METHOD-CACHE* 2) else ; A cache miss (Cached-FetchMethodOrHelp /\obj/\ ',selector *LOOPS-INLINE-METHOD-CACHE*)) /\obj/\ ,@args)) ,object (LOADTIMECONSTANT (\Make-Method-Cache-Entry)))") - - elseif *BYTECOMPILER-IS-EXPANDING* - then `(LET ((/\obj/\ ,object)) - (DECLARE (LOCALVARS /\obj/\)) - (LOOPS-FUNCALL (FetchMethodOrHelp /\obj/\ - ',selector) - /\obj/\ - ,@args)) - else - (LET* - [(obj (if (LITATOM object) - then object - else (GENSYM))) - [bindings (if (EQ obj object) - then NIL - else `((,obj ,object] - (localVars (for binding in bindings collect (CAR binding] - (if *Compile-Local-Message-Cache* - then - `(LET (,@bindings) - - (* ;; - ",@(if localVars then `((DECLARE (LOCALVARS ,@localVars))) else NIL)") - - (DECLARE (LOCALVARS . T)) - (LOOPS-FUNCALL - (LET [(*LOOPS-INLINE-METHOD-CACHE* (LOADTIMECONSTANT ( + (\GETBASEPTR *LOOPS-INLINE-METHOD-CACHE* 2)) + (T (* ; "A cache miss") + (Cached-FetchMethodOrHelp /\obj/\ + ',selector *LOOPS-INLINE-METHOD-CACHE*) + )) + /\obj/\ + ,@args)) + + (* ;; "`((OPENLAMBDA (/\obj/\ *LOOPS-INLINE-METHOD-CACHE*) (DECLARE (LOCALVARS . T)) (CL:FUNCALL (if (AND (Object? /\obj/\) (EQ (\GETBASEPTR *LOOPS-INLINE-METHOD-CACHE* 0) (fetch (OBJECT CLASS) of /\obj/\))) then ; A cache hit (\GETBASEPTR *LOOPS-INLINE-METHOD-CACHE* 2) else ; A cache miss (Cached-FetchMethodOrHelp /\obj/\ ',selector *LOOPS-INLINE-METHOD-CACHE*)) /\obj/\ ,@args)) ,object (LOADTIMECONSTANT (\Make-Method-Cache-Entry)))") + + elseif *BYTECOMPILER-IS-EXPANDING* + then `(LET ((/\obj/\ ,object)) + (DECLARE (LOCALVARS /\obj/\)) + (LOOPS-FUNCALL (FetchMethodOrHelp /\obj/\ ',selector) + /\obj/\ + ,@args)) + else + (LET* + [(obj (if (LITATOM object) + then object + else (GENSYM))) + [bindings (if (EQ obj object) + then NIL + else `((,obj ,object] + (localVars (for binding in bindings collect (CAR binding] + (if *Compile-Local-Message-Cache* + then + `(LET (,@bindings) + + (* ;; + ",@(if localVars then `((DECLARE (LOCALVARS ,@localVars))) else NIL)") + + (DECLARE (LOCALVARS . T)) + (LOOPS-FUNCALL (LET [(*LOOPS-INLINE-METHOD-CACHE* (LOADTIMECONSTANT + ( \Make-Method-Cache-Entry - ] + ] (* ;; "This bogus SPECVARS stuff is here to prevent the compiler from thinking that the in-line cache is a quoted constant. Note that (almost) no user code gets called within this binding, so it is pretty safe. (The potential exception is when the user has redefined the FetchMethodOrHelp method).") - (* ;; "(DECLARE (SPECVARS *LOOPS-INLINE-METHOD-CACHE*))") + (* ;; + "(DECLARE (SPECVARS *LOOPS-INLINE-METHOD-CACHE*))") - (if [AND (Object? ,obj) - (EQ (\GETBASEPTR *LOOPS-INLINE-METHOD-CACHE* 0 - ) - (fetch (OBJECT CLASS) - of ,obj] - then (* ; "A cache hit") - (\GETBASEPTR *LOOPS-INLINE-METHOD-CACHE* 2) - else (* ; "A cache miss") - (Cached-FetchMethodOrHelp ,obj - ',selector *LOOPS-INLINE-METHOD-CACHE*))) + (if [AND (Object? ,obj) + (EQ (\GETBASEPTR + *LOOPS-INLINE-METHOD-CACHE* 0 + ) + (fetch (OBJECT CLASS) + of ,obj] + then (* ; "A cache hit") + (\GETBASEPTR *LOOPS-INLINE-METHOD-CACHE* + 2) + else (* ; "A cache miss") + (Cached-FetchMethodOrHelp + ,obj + ',selector *LOOPS-INLINE-METHOD-CACHE*))) + ,obj + ,@args)) + elseif bindings + then `(LET (,@bindings) + (DECLARE (LOCALVARS ,@localVars)) + (LOOPS-FUNCALL (FetchMethodOrHelp ,obj ',selector) + ,obj + ,@args)) + else `(LOOPS-FUNCALL (FetchMethodOrHelp ,obj ',selector) ,obj - ,@args)) - elseif bindings - then `(LET (,@bindings) - (DECLARE (LOCALVARS ,@localVars)) - (LOOPS-FUNCALL (FetchMethodOrHelp - ,obj - ',selector) - ,obj - ,@args)) - else `(LOOPS-FUNCALL (FetchMethodOrHelp ,obj ',selector) - ,obj - ,@args]) + ,@args]) (DEFMACRO SubclassResponsibility () (DECLARE (CL:SPECIAL *ArgsOfMethodBeingCompiled* *ClassNameOfMethodOwner* - *SelectorOfMethodBeingCompiled* *SelfOfMethodBeingCompiled*)) + *SelectorOfMethodBeingCompiled* *SelfOfMethodBeingCompiled*)) `(HELPCHECK (CONCAT "Method " ,*SelectorOfMethodBeingCompiled* " of class " ,*ClassNameOfMethodOwner* " needs to be defined in class ") (_ ,*SelfOfMethodBeingCompiled* ClassName))) @@ -1140,61 +1100,36 @@ to try again")) (DECLARE%: EVAL@COMPILE -(PUTPROPS MapSupersForm MACRO ((mappingForm classRec . progArgs) - (* dgb%: "12-JAN-82 14:55") - - (* Maps through a class and its supers in order. - Returns if form has return statement, or NIL when finished %. - form can use class as free variable) - - (PROG (supers (class classRec) . progArgs) - (COND - ((NULL class) - (RETURN NIL))) - (SETQ supers (Supers class)) - LP - mappingForm - (* this is where the substitution - goes) - ON (COND - ((SETQ class (pop supers)) - (* If there is a Super, iterate - around the Loop) - (GO LP))) (* Returns NIL if not found) - (RETURN NIL)))) - -(PUTPROPS MapSupersUnlessBadList MACRO ((badList mappingForm classRec . progArgs) - (* dgb%: "12-JAN-82 14:55") - - (* Maps through a class and its supers in order. - Returns if form has return statement, or NIL when finished %. - form can use class as free variable) - - (PROG (supers (class classRec) . progArgs) - (COND - ((NULL class) - (RETURN NIL))) - (SETQ supers (Supers class)) - LP (* Skip if super is on badList.) - (OR (FMEMB (ClassName class) - badList) - mappingForm) - (* this is where the substitution - goes) - ON (COND - ((SETQ class (pop supers)) - (GO LP))) - (* Returns NIL if not found) - (RETURN NIL)))) +(PUTPROPS MapSupersForm MACRO ((mappingForm classRec . progArgs) + (PROG (supers (class classRec) . progArgs) + (COND + ((NULL class) + (RETURN NIL))) + (SETQ supers (Supers class)) + LP + mappingForm + ON (COND + ((SETQ class (pop supers)) + (GO LP))) + (RETURN NIL)))) + +(PUTPROPS MapSupersUnlessBadList MACRO ((badList mappingForm classRec . progArgs) + (PROG (supers (class classRec) . progArgs) + (COND + ((NULL class) + (RETURN NIL))) + (SETQ supers (Supers class)) + LP (OR (FMEMB (ClassName class) + badList) + mappingForm) + ON (COND + ((SETQ class (pop supers)) + (GO LP))) + (RETURN NIL)))) (PUTPROPS NextSuperClass MACRO [NIL (COND - ((SETQ class (pop supers)) - - (* * This code assumes that LP is a defined PROG label and supers and class are - bound) - (* If there is a Super, iterate - around the Loop) - (GO LP]) + ((SETQ class (pop supers)) + (GO LP]) ) (DEFINEQ @@ -1272,16 +1207,18 @@ to try again")) ) (PUTPROPS LOOPSMETHODS COPYRIGHT ("Venue & Xerox Corporation" 1984 1985 1986 1987 1988 1990 1991)) (DECLARE%: DONTCOPY - (FILEMAP (NIL (6214 7140 (FetchMethodLocally 6224 . 6504) (_Apply 6506 . 7138)) (27276 57840 ( -AddMethod 27286 . 29050) (ApplyMethod 29052 . 30080) (ApplyMethodInTtyProcess 30082 . 30415) ( -DefMethObj 30417 . 32403) (DefineMethod 32405 . 35029) (DeleteMethod 35031 . 37849) (DoFringeMethods -37851 . 38846) (DoMethod 38848 . 39986) (FindSuperMethod 39988 . 40827) (IVFunction 40829 . 41108) ( -BootInstallMethod 41110 . 41500) (FullInstallMethod 41502 . 41729) (InstanceNotMethod 41731 . 42182) ( -LoopsHelp 42184 . 42727) (METH 42729 . 43925) (METHOBJ 43927 . 44427) (MessageAuthor 44429 . 44647) ( -MethName 44649 . 45067) (MoveMethod 45069 . 47344) (RenameMethod 47346 . 49454) (\ApplyMethod 49456 . -49917) (FindLocalMethod 49919 . 50224) (FindSelectorIndex 50226 . 50600) (FetchMethod 50602 . 52043) ( -FetchMethodOrHelp 52045 . 52407) (GetCallerClass 52409 . 53739) (GetNthMethod 53741 . 54033) ( -GetSuperMethod 54035 . 56375) (PutMethodNth 56377 . 56806) (DCM 56808 . 57838)) (57930 58457 ( -Cached-FetchMethodOrHelp 57940 . 58455)) (62040 64464 (GetMethodSource 62050 . 62396) ( -CheckMethodChanged 62398 . 63528) (CheckMethodForm 63530 . 64462))))) + (FILEMAP (NIL (3508 3584 (_ 3508 . 3584)) (3586 3663 (SEND 3586 . 3663)) (3665 3839 (_! 3665 . 3839)) +(3841 3957 (__ 3841 . 3957)) (3959 4348 (_New 3959 . 4348)) (4350 4515 (_IV 4350 . 4515)) (6114 7040 ( +FetchMethodLocally 6124 . 6404) (_Apply 6406 . 7038)) (22976 23396 (SubclassResponsibility 22976 . +23396)) (23397 53961 (AddMethod 23407 . 25171) (ApplyMethod 25173 . 26201) (ApplyMethodInTtyProcess +26203 . 26536) (DefMethObj 26538 . 28524) (DefineMethod 28526 . 31150) (DeleteMethod 31152 . 33970) ( +DoFringeMethods 33972 . 34967) (DoMethod 34969 . 36107) (FindSuperMethod 36109 . 36948) (IVFunction +36950 . 37229) (BootInstallMethod 37231 . 37621) (FullInstallMethod 37623 . 37850) (InstanceNotMethod +37852 . 38303) (LoopsHelp 38305 . 38848) (METH 38850 . 40046) (METHOBJ 40048 . 40548) (MessageAuthor +40550 . 40768) (MethName 40770 . 41188) (MoveMethod 41190 . 43465) (RenameMethod 43467 . 45575) ( +\ApplyMethod 45577 . 46038) (FindLocalMethod 46040 . 46345) (FindSelectorIndex 46347 . 46721) ( +FetchMethod 46723 . 48164) (FetchMethodOrHelp 48166 . 48528) (GetCallerClass 48530 . 49860) ( +GetNthMethod 49862 . 50154) (GetSuperMethod 50156 . 52496) (PutMethodNth 52498 . 52927) (DCM 52929 . +53959)) (54051 54578 (Cached-FetchMethodOrHelp 54061 . 54576)) (56363 58787 (GetMethodSource 56373 . +56719) (CheckMethodChanged 56721 . 57851) (CheckMethodForm 57853 . 58785))))) STOP diff --git a/system/LOOPSMETHODS.DFASL b/system/LOOPSMETHODS.DFASL index aa2e292aa98b26d7b4425e51fc0653fc938c3e94..c68f3e0142c5c8e4f42db95ea315d3967ed84545 100644 GIT binary patch literal 24770 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 YKf8c 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 diff --git a/system/LOOPSPRINT b/system/LOOPSPRINT index 1dfb3a9..7ccbe3b 100644 --- a/system/LOOPSPRINT +++ b/system/LOOPSPRINT @@ -1,26 +1,14 @@ -(DEFINE-FILE-INFO PACKAGE "IL" READTABLE "INTERLISP" BASE 10) -(FILECREATED "28-Jun-93 22:43:05" {DSK}RELEASE>loops>2.0>src>LOOPSPRINT.;4 18868 - - changes to%: (ALISTS (PRETTYPRINTMACROS @) - (PRETTYPRINTMACROS _@) - (PRETTYPRINTMACROS _) - (PRETTYPRINTMACROS SEND) - (PRETTYPRINTMACROS _IV) - (PRETTYPRINTMACROS _Proto) - (PRETTYPRINTMACROS _New) - (PRETTYPRINTMACROS _Super) - (PRETTYPRINTMACROS _!) - (PRETTYPRINTMACROS _Process) - (PRETTYPRINTMACROS _Process!) - (PRETTYPRINTMACROS \LOOPS-PRINT-EVAL-MARKER)) - (FNS PrintLoopsEvalAtLoad) - (VARS LOOPSPRINTCOMS) - - previous date%: "14-Jun-93 23:50:45" {DSK}RELEASE>loops>2.0>src>LOOPSPRINT.;3) +(DEFINE-FILE-INFO PACKAGE "INTERLISP" READTABLE "INTERLISP" BASE 10) + +(FILECREATED "19-Aug-2022 14:47:13" {DSK}larry>loops>system>LOOPSPRINT.;2 18068 + + :CHANGES-TO (VARS LOOPSPRINTCOMS) + + :PREVIOUS-DATE "28-Jun-93 22:43:05" {DSK}larry>loops>system>LOOPSPRINT.;1) (* ; " -Copyright (c) 1983, 1984, 1985, 1986, 1987, 1988, 1990, 1991, 1993 by Venue & Xerox Corporation. All rights reserved. +Copyright (c) 1983-1988, 1990-1991, 1993 by Venue & Xerox Corporation. ") (PRETTYCOMPRINT LOOPSPRINTCOMS) @@ -45,6 +33,7 @@ Copyright (c) 1983, 1984, 1985, 1986, 1987, 1988, 1990, 1991, 1993 by Venue & Xe (FNS PrintClass PrintInstance) (DECLARE%: EVAL@COMPILE DONTCOPY (EXPORT (FUNCTIONS TTYStream?)) + DONTEVAL@LOAD (FILES (LOADCOMP) LOOPSDATATYPES)) (P (DEFPRINT 'class 'PrintClass) @@ -267,7 +256,7 @@ Copyright (c) 1983, 1984, 1985, 1986, 1987, 1988, 1990, 1991, 1993 by Venue & Xe (* "END EXPORTED DEFINITIONS") - +DONTEVAL@LOAD (FILESLOAD (LOADCOMP) LOOPSDATATYPES) @@ -300,12 +289,12 @@ Copyright (c) 1983, 1984, 1985, 1986, 1987, 1988, 1990, 1991, 1993 by Venue & Xe `(RESETLST [if (WINDOWP ,stream) then [RESETSAVE NIL (LIST (FUNCTION WINDOWPROP) - ,stream - 'PROCESS - (WINDOWPROP ,stream 'PROCESS] - (RESETSAVE (TTYDISPLAYSTREAM ,stream)) - (if (NOT (TTY.PROCESSP)) - then (RESETSAVE (TTY.PROCESS (THIS.PROCESS] + ,stream + 'PROCESS + (WINDOWPROP ,stream 'PROCESS] + (RESETSAVE (TTYDISPLAYSTREAM ,stream)) + (if (NOT (TTY.PROCESSP)) + then (RESETSAVE (TTY.PROCESS (THIS.PROCESS] ,@forms)]) (DECLARE%: DOEVAL@COMPILE DONTCOPY @@ -449,17 +438,16 @@ Type OK to ignore and go on.")))))))) (ADDTOVAR PRETTYPRINTYPEMACROS (instance . PPObj)) (ADDTOVAR PRETTYPRINTMACROS (@ . PrettyPrintLoopsForm) - (_@ . PrettyPrintLoopsForm) - (_ . PrettyPrintLoopsForm) - (SEND . PrettyPrintLoopsForm) - (_IV . PrettyPrintLoopsForm) - (_Proto . PrettyPrintLoopsForm) - (_New . PrettyPrintLoopsForm) - (_Super . PrettyPrintLoopsForm) - (_! . PrettyPrintLoopsForm) - (_Process . PrettyPrintLoopsForm) - (_Process! . PrettyPrintLoopsForm) - #,NIL) + (_@ . PrettyPrintLoopsForm) + (_ . PrettyPrintLoopsForm) + (SEND . PrettyPrintLoopsForm) + (_IV . PrettyPrintLoopsForm) + (_Proto . PrettyPrintLoopsForm) + (_New . PrettyPrintLoopsForm) + (_Super . PrettyPrintLoopsForm) + (_! . PrettyPrintLoopsForm) + (_Process . PrettyPrintLoopsForm) + (_Process! . PrettyPrintLoopsForm)) @@ -497,7 +485,7 @@ Type OK to ignore and go on.")))))))) ) (ADDTOVAR HPRINTMACROS (class . HPRINTCLASS) - (instance . HPRINTINSTANCE)) + (instance . HPRINTINSTANCE)) (DECLARE%: DONTEVAL@LOAD DOEVAL@COMPILE DONTCOPY COMPILERVARS (ADDTOVAR NLAMA $&) @@ -509,11 +497,12 @@ Type OK to ignore and go on.")))))))) (PUTPROPS LOOPSPRINT COPYRIGHT ("Venue & Xerox Corporation" 1983 1984 1985 1986 1987 1988 1990 1991 1993)) (DECLARE%: DONTCOPY - (FILEMAP (NIL (4094 7234 (HashMacro 4104 . 5310) (PPDefault 5312 . 5556) (SETALLSYNTAX 5558 . 6098) ( -$& 6100 . 6677) ($ 6679 . 6844) ($C 6846 . 7232)) (7427 10319 (PrintClass 7437 . 8157) (PrintInstance -8159 . 10317)) (11885 16596 (EntityAddress 11895 . 12012) (PrettyPrintLoopsForm 12014 . 12321) ( -PrettyPrintClass 12323 . 12874) (PrintDefInstances 12876 . 13513) (PrettyPrintInstance 13515 . 13978) -(PrttyClasses 13980 . 14332) (PrttyInstances 14334 . 15191) (PrintLoopsEvalAtLoad 15193 . 15428) (PPC -15430 . 15718) (PPObj 15720 . 16594)) (17617 18492 (HPRINTCLASS 17627 . 17907) (HPRINTINSTANCE 17909 - . 18215) (HREADCLASS 18217 . 18351) (HREADINSTANCE 18353 . 18490))))) + (FILEMAP (NIL (3377 6517 (HashMacro 3387 . 4593) (PPDefault 4595 . 4839) (SETALLSYNTAX 4841 . 5381) ( +$& 5383 . 5960) ($ 5962 . 6127) ($C 6129 . 6515)) (6710 9602 (PrintClass 6720 . 7440) (PrintInstance +7442 . 9600)) (9674 9765 (TTYStream? 9674 . 9765)) (10458 11063 (WITH.PP.OUTPUT 10458 . 11063)) (11167 + 15878 (EntityAddress 11177 . 11294) (PrettyPrintLoopsForm 11296 . 11603) (PrettyPrintClass 11605 . +12156) (PrintDefInstances 12158 . 12795) (PrettyPrintInstance 12797 . 13260) (PrttyClasses 13262 . +13614) (PrttyInstances 13616 . 14473) (PrintLoopsEvalAtLoad 14475 . 14710) (PPC 14712 . 15000) (PPObj +15002 . 15876)) (16821 17696 (HPRINTCLASS 16831 . 17111) (HPRINTINSTANCE 17113 . 17419) (HREADCLASS +17421 . 17555) (HREADINSTANCE 17557 . 17694))))) STOP diff --git a/system/LOOPSPRINT.DFASL b/system/LOOPSPRINT.DFASL index f4014502ca8be71d2d156eb46885918ae07ebceb..4b5f04c9610c49d70d101c35a385b2273e9e2c8d 100644 GIT binary patch delta 1041 zcma)5OH31C5Z-^c6etjRc3YrjTa99&Xls>FO{KAb4VCTEu8$~$*Q!OJu#`l6fbUZU z$xyN*UOX93LK?gn_2$j17o%4b4;rst^xwtU7(JNm&U`!n{4?J?cC|D_FEF^IdxPK&Zj06VN_LyGs>9Y>+pu> zE_nU>{eHn02nO1Nz5|x-a3c1nTeq4T8=h~a?gDk6o6QLN4f-7j9`prSpMPcZjir?4 z>FSR~6Y=~N!g0h53#QJ>T(%-2(u0%XSZ7QON8qJtfW-3+MXhYnAP(UO#ERdO3^bSQ zC33#MWR%z?yu~m~R$FCJHsE~?%;>`7@S*hVvD$xe&ShJ!MiRZ(kNj6F@(Y&zW+LUE zRW1@T0{g1J)JuBGC6vdtT(&r_rlvCDl#Eg@%Ftf(t~FkU@ropl#E|d7kuVN*ARoY? zHXPiIybA}d*ja_L8IKZ_@*TASu1qoO)CosWfy=zxn$p%tNoOg|!c@|irXgLJf(_nF z#^EF1P2~p9!x7tQatU&_Gem-~HXD111F^vhP4=KkvQaVv_ETg6w(RRvO7$9Le%1gxA(JAV%B1Gmmfz9yh4$6bqZY66!&K*=^q-2LaEcVN$qGFU6oY94G6L>)Kbzakj18P$0n$Xm4-I`leBRo z4GNTYa3U?B2gQ$aoHT8dCat-^h0CN#I}A;lw97PU(~bykyX?X~f2kB9E|YA(pWl0a z@ArP+vpxP`{9a^z`O4~Cxs;elWm0M`l~^p7m#u^{6irx_d?KT1dQP86XN{o`W9_+e zwURGLmy3%9DPJj=tA!a!IT<-qEk#ZZONtVY4acL$+sD*g=Itb-TCir!D`82I)aq>2 zT9uTjqJ*Vm(YQMniyx2O|L#YDPiN{kh#(L*Y`R9_SJy?N)uZk(@1DYGG{J27omlWu z>j%WB&$i~tfR39S$KA0X@Mthtv%!P1{jlauYFQ)oiJBSBXlfGvZo4pc=v|@@Ytgl2 z?(FrE|1Uv(qdn>&dVTNUIw2+~hhF=2hr~7-^R#b^UMZGVwbCT&XVHN8;orjA0o1$( zni&+w(NuBz6pAsN9>S^jQIv728%I0Q@Zf2JdVQoTCLEaYIKvQu;0&yZA#u*$A+4ir zv75|&7}g) z3-ChjhEPx3rTZwwOFiew0zB>6yr_Xb}i6eRt4IkZ?a`OPNWXu{1V{GthOHQ{XvcW-t%C{c>B-7xK04 zu+m#>U;L!;_U#7W!rXr}6x!oB=n6^ux!Ww4Cp+*>=!JC8(c;}-jeG1Y>GyBm{0H{E BS{DES diff --git a/system/LOOPSSITE.DFASL b/system/LOOPSSITE.DFASL index 6a223adcf1c3e1ace8a9b4de0640c226e8241c48..edb502f157de5ebed0ca994c60b9d2a84bcde796 100644 GIT binary patch delta 34 pcmdnRv72MUd~r(!$I|rD;t~ZT10y3H1w#`nQ$s65gN<8TnE}4`3SIyJ delta 33 ocmdnZv5RBEd@&0J-^8Ni3briggs>Projects>loops>src>LOOPSSPEEDUP.;2 13756 +(FILECREATED "19-Aug-2022 14:47:13" {DSK}larry>loops>system>LOOPSSPEEDUP.;2 13729 - :CHANGES-TO (MACROS \GETDTD) + :CHANGES-TO (VARS LOOPSSPEEDUPCOMS) - :PREVIOUS-DATE " 6-Nov-91 16:43:37" {DSK}briggs>Projects>loops>src>LOOPSSPEEDUP.;1) + :PREVIOUS-DATE "11-Mar-2022 19:19:08" {DSK}larry>loops>system>LOOPSSPEEDUP.;1) (* ; " @@ -19,8 +19,8 @@ Copyright (c) 1986-1987, 1990-1991, 2022 by Venue & Xerox Corporation. (* ;;; "Need the following low-level stuff to make a datatype non-garbage-collectable. This saves us the effort of maintaining reference counts") (FNS Make-Not-Reference-Counted) - (DECLARE%: EVAL@COMPILE DONTCOPY (FILES (LOADCOMP) - LLGC LLDATATYPE) + (DECLARE%: EVAL@COMPILE DONTCOPY (FILES (SOURCE) + SYSEDIT) (EXPORT (MACROS \GETDTD))) @@ -88,8 +88,8 @@ Copyright (c) 1986-1987, 1990-1991, 2022 by Venue & Xerox Corporation. ) (DECLARE%: EVAL@COMPILE DONTCOPY -(FILESLOAD (LOADCOMP) - LLGC LLDATATYPE) +(FILESLOAD (SOURCE) + SYSEDIT) (* "FOLLOWING DEFINITIONS EXPORTED")(DECLARE%: EVAL@COMPILE @@ -342,7 +342,7 @@ Copyright (c) 1986-1987, 1990-1991, 2022 by Venue & Xerox Corporation. (ADDTOVAR GLOBALVARS *Global-Method-Cache*) (PUTPROPS LOOPSSPEEDUP COPYRIGHT ("Venue & Xerox Corporation" 1986 1987 1990 1991 2022)) (DECLARE%: DONTCOPY - (FILEMAP (NIL (2216 3423 (Make-Not-Reference-Counted 2226 . 3421)) (9871 11360 (FlushIVIndexCache 9881 - . 10625) (\Make-IV-Cache-Entry 10627 . 11358)) (11804 13225 (FlushMethodCache 11814 . 12466) ( -\Make-Method-Cache-Entry 12468 . 13223))))) + (FILEMAP (NIL (2199 3406 (Make-Not-Reference-Counted 2209 . 3404)) (9844 11333 (FlushIVIndexCache 9854 + . 10598) (\Make-IV-Cache-Entry 10600 . 11331)) (11777 13198 (FlushMethodCache 11787 . 12439) ( +\Make-Method-Cache-Entry 12441 . 13196))))) STOP diff --git a/system/LOOPSSPEEDUP.DFASL b/system/LOOPSSPEEDUP.DFASL index c4460ba3723520d700f252968c6b969718d65cb1..9f83522ed214b37adc582577461b1e594356a84b 100644 GIT binary patch literal 5490 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 diff --git a/system/LOOPSSTRUC b/system/LOOPSSTRUC index 43987fc..045bbd5 100644 --- a/system/LOOPSSTRUC +++ b/system/LOOPSSTRUC @@ -1,10 +1,10 @@ (DEFINE-FILE-INFO PACKAGE "INTERLISP" READTABLE "INTERLISP" BASE 10) -(FILECREATED " 6-Jul-2022 15:03:42" {DSK}larry>loops>src>LOOPSSTRUC.;2 68244 +(FILECREATED "19-Aug-2022 14:47:13" {DSK}larry>loops>system>LOOPSSTRUC.;2 67241 - :CHANGES-TO (MACROS Class) + :CHANGES-TO (VARS LOOPSSTRUCCOMS) - :PREVIOUS-DATE "15-Jun-93 13:59:37" {DSK}larry>loops>src>LOOPSSTRUC.;1) + :PREVIOUS-DATE " 6-Jul-2022 15:03:42" {DSK}larry>loops>system>LOOPSSTRUC.;1) (* ; " @@ -50,6 +50,9 @@ Copyright (c) 1983-1988, 1990-1991, 1993 by Venue & Xerox Corporation. (FUNCTIONS MakeIVPropDescr WithIVPropDescr WithIVPropDescr!) (MACROS InstGetProp InstPutProp InstRemProp) (MACROS ExtractRealValue)) + DONTEVAL@LOAD + (FILES (LOADCOMP) + LOOPSDATATYPES) DONTEVAL@COMPILE DOCOPY (INITRECORDS IVPropDescr)) (* ;; "Access macros for classes and the like") @@ -313,6 +316,10 @@ Copyright (c) 1983-1988, 1990-1991, 1993 by Venue & Xerox Corporation. (* "END EXPORTED DEFINITIONS") +DONTEVAL@LOAD + +(FILESLOAD (LOADCOMP) + LOOPSDATATYPES) DONTEVAL@COMPILE DOCOPY ) @@ -346,13 +353,8 @@ DONTEVAL@COMPILE DOCOPY (PUTPROPS ClassVariables MACRO ((self) (APPEND (fetch (class cvNames) of self)))) -(PUTPROPS FetchCIVDescr MACRO [(self varName) (* dgb%: "25-JAN-82 15:48") - - (* * Find the description list for the named variable in a class, returning NIL - if none is there.) - - (PROG NIL (* Short circuit GetNth with embedded - RETURN if no index found) +(PUTPROPS FetchCIVDescr MACRO [(self varName) + (PROG NIL (RETURN (GetNth (fetch VARDESCRS of self) (OR (FindIndex varName (fetch VARNAMES of self)) @@ -365,18 +367,12 @@ DONTEVAL@COMPILE DOCOPY index]) (PUTPROPS FetchIVDescr MACRO [OPENLAMBDA (self varName) - - (* * Find the IVDescr for the named variable) - (LET (descr (varIndex (FindVarIndex varName self))) (DECLARE (LOCALVARS varIndex descr)) (COND (varIndex (OR (GetVarNth self varIndex) (create IVDescr))) [(SETQ descr (ASSOC varName (fetch otherIVs of self))) - - (* * non standard instance variables are stored on an ALIST in otherIVs) - (OR (CDR descr) (CDR (NCONC1 descr (create IVDescr] ((FIXP varName) @@ -422,10 +418,6 @@ DONTEVAL@COMPILE DOCOPY (NEQ NoValueFound arg))) (PUTPROPS ObjGetProp MACRO [OPENLAMBDA (descr propName) - - (* Called by all fetch fns. Gets value in description list. - Does not check for activeValues.) - (COND ((NULL descr) NotSetValue) @@ -437,10 +429,6 @@ DONTEVAL@COMPILE DOCOPY (RETURN (CADR tail] finally (RETURN NotSetValue]) (PUTPROPS ObjPutProp MACRO (OPENLAMBDA (descr propName value) - - (* * Called to put a new value on a decr list by all the Store fns. - Adds property if no value there already.) - (COND ((NULL propName) (replace IVValue of descr with value)) @@ -452,10 +440,6 @@ DONTEVAL@COMPILE DOCOPY value)))) (PUTPROPS ObjRemProp MACRO [OPENLAMBDA (descr propName) - - (* * descr in an IVPropDescr with fields IVName and IVPropList Removes a property - from that list. RETURNS NIL if not found, propname otherwise) - (LET ((propList (fetch IVPropList of descr))) (if (NULL propList) then NIL @@ -470,12 +454,6 @@ DONTEVAL@COMPILE DOCOPY (RETURN propName]) (PUTPROPS ObjSetValue MACRO [(self varName newValue descr aValue propName type) - - (* Called by anyone who wants to set a value of a variable or property of any - kind. Does the checking for active values. - The argument type is NIL for InstanceVariables, and otherwise is one of CV, - CLASS, METHOD) - (COND ((type? annotatedValue aValue) (_ (fetch annotatedValue of aValue) @@ -1456,17 +1434,17 @@ DONTEVAL@COMPILE DOCOPY (PUTPROPS LOOPSSTRUC COPYRIGHT ("Venue & Xerox Corporation" 1983 1984 1985 1986 1987 1988 1990 1991 1993)) (DECLARE%: DONTCOPY - (FILEMAP (NIL (4843 6411 (Once-Only 4843 . 6411)) (6413 9607 (WithIVValue 6413 . 9607)) (9609 9985 ( -ChangeIVValue 9609 . 9985)) (10261 10453 (MakeIVPropDescr 10261 . 10453)) (10455 10729 ( -WithIVPropDescr 10455 . 10729)) (10731 11103 (WithIVPropDescr! 10731 . 11103)) (23788 24530 ( -GetInitialValue 23788 . 24530)) (24847 33885 (Parse@ 24857 . 26803) (Parse@* 26805 . 27345) ( -ParseAccess 27347 . 30012) (ParseBang 30014 . 31664) (ParseExpr 31666 . 32796) (ParsePut@ 32798 . -33883)) (34185 49103 (CreateEntity 34195 . 34678) (DeleteObjectName 34680 . 36448) ( -FastClassInitialize 36450 . 37878) (GetIVHere 37880 . 38702) (GetValueOnly 38704 . 40665) (GetClassRec - 40667 . 41258) (GetLispClass 41260 . 41785) (GetObjectName 41787 . 42548) (GetObjectRec 42550 . 43125 -) (MakeMixinClass 43127 . 44474) (NameEntity 44476 . 45540) (NewEntity 45542 . 46357) (PutObjectName -46359 . 47671) (PutValueOnly 47673 . 48834) ($! 48836 . 49101)) (51762 67179 (BlankInstance 51772 . -53112) (BootNameObject 53114 . 53535) (FullNameObject 53537 . 53808) (FillInst 53810 . 54615) (FillIVs - 54617 . 55226) (IVSource 55228 . 58278) (ModifyInstance 58280 . 59767) (NewClass 59769 . 61265) ( -NewObject 61267 . 61807) (UpdateClassIVs 61809 . 63741) (UpdateIVDescrs 63743 . 67177))))) + (FILEMAP (NIL (4958 6526 (Once-Only 4958 . 6526)) (6528 9722 (WithIVValue 6528 . 9722)) (9724 10100 ( +ChangeIVValue 9724 . 10100)) (10376 10568 (MakeIVPropDescr 10376 . 10568)) (10570 10844 ( +WithIVPropDescr 10570 . 10844)) (10846 11218 (WithIVPropDescr! 10846 . 11218)) (22785 23527 ( +GetInitialValue 22785 . 23527)) (23844 32882 (Parse@ 23854 . 25800) (Parse@* 25802 . 26342) ( +ParseAccess 26344 . 29009) (ParseBang 29011 . 30661) (ParseExpr 30663 . 31793) (ParsePut@ 31795 . +32880)) (33182 48100 (CreateEntity 33192 . 33675) (DeleteObjectName 33677 . 35445) ( +FastClassInitialize 35447 . 36875) (GetIVHere 36877 . 37699) (GetValueOnly 37701 . 39662) (GetClassRec + 39664 . 40255) (GetLispClass 40257 . 40782) (GetObjectName 40784 . 41545) (GetObjectRec 41547 . 42122 +) (MakeMixinClass 42124 . 43471) (NameEntity 43473 . 44537) (NewEntity 44539 . 45354) (PutObjectName +45356 . 46668) (PutValueOnly 46670 . 47831) ($! 47833 . 48098)) (50759 66176 (BlankInstance 50769 . +52109) (BootNameObject 52111 . 52532) (FullNameObject 52534 . 52805) (FillInst 52807 . 53612) (FillIVs + 53614 . 54223) (IVSource 54225 . 57275) (ModifyInstance 57277 . 58764) (NewClass 58766 . 60262) ( +NewObject 60264 . 60804) (UpdateClassIVs 60806 . 62738) (UpdateIVDescrs 62740 . 66174))))) STOP diff --git a/system/LOOPSSTRUC.DFASL b/system/LOOPSSTRUC.DFASL index b1b00e52d3fcc2c89ac236e9ac2dc02db1df162e..f745666a3781e6cedd1ec232ad5eab4e693a7c42 100644 GIT binary patch delta 6080 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