(FILECREATED "26-Jun-84 14:15:17" ("compiled on " {INDIGO}SOURCES>LOOPSRULES.;29) " 8-Jun-84 11:17:20" recompiled exprs: RuleSetSource.CompileRules RuleSetSource.EditRules MakeEditMenu DefRSM in WORK dated "22-Jun-84 14:08:40") (FILECREATED "26-Jun-84 14:14:23" {INDIGO}SOURCES>LOOPSRULES.;29 46006 changes to: (CLASSES RuleSet) (FNS RuleSetSource.CompileRules RuleSetSource.EditRules MakeEditMenu DefRSM) previous date: "17-Apr-84 20:33:39" {INDIGO}SOURCES>LOOPSRULES.;28) Rule.Print D1 (I 1 file I 0 self) A `A @g A `A A A `A lA oA @g A oA @g g A A lA oA @g A oA @g A `A A A i(256Q TERPRI 251Q TERPRI 244Q CHANGEFONT 234Q PRIN1 230Q GetValue 220Q PRIN1 207Q PRIN1 203Q GetValue 173Q PRIN1 162Q SPACES 153Q TERPRI 147Q PRIN1 143Q GetValue 135Q GetValue 125Q PRIN1 114Q PRIN1 110Q GetValue 100Q PRIN1 67Q SPACES 60Q CHANGEFONT 50Q TERPRI 44Q TERPRI 37Q CHANGEFONT 27Q PRIN1 23Q GetValue 13Q CHANGEFONT 3 TERPRI) (240Q DEFAULTFONT 225Q edited 200Q editor 140Q name 132Q ruleSet 105Q ruleNumber 54Q COMMENTFONT 33Q DEFAULTFONT 20Q source 7 BOLDFONT) (214Q " on " 167Q " edited by " 121Q " from " 74Q "... Rule ") RuleSet.CompileRules D1 (P 0 sourcePerspective I 1 compilerOptions I 0 self) )P@Zg JglIXd\g LAlK@(35Q FetchMethodOrHelp 12Q FetchMethodOrHelp) (32Q CompileRules 17Q Source 7 GetPersp) NIL RuleSet.CopyRules D1 (P 1 ruleSetSource P 0 newRS I 2 workSpace I 1 newName I 0 self) k  @[g KAlJXBdgB @g @]g MglLYd@I_g OkN hH_g _OkOH(135Q FetchMethodOrHelp 120Q SaveRules 106Q FetchMethodOrHelp 60Q FetchMethodOrHelp 45Q GetValue 35Q PutValue 12Q FetchMethodOrHelp) (132Q CompileRules 124Q rsCompilerOptions 103Q GetSource 65Q Source 55Q GetPersp 50Q rsRuleClass 42Q ruleClass 31Q workSpace 7 Copy) NIL RuleSet.EditRules D1 (P 0 sourcePerspective I 1 coms I 0 self) )P@Zg JglIXd\g LAlK@(35Q FetchMethodOrHelp 12Q FetchMethodOrHelp) (32Q EditRules 17Q Source 7 GetPersp) NIL RuleSet.Off D1 (I 1 compilerOption I 0 self) UA@g &@gA@g @Hg HkI`i Ai `i oi @i i (122Q TERPRI 116Q PRIN1 111Q PRIN1 101Q CHANGEFONT 72Q PRIN1 65Q CHANGEFONT 47Q FetchMethodOrHelp 34Q PutValue 31Q REMOVE 26Q GetValue 7 GetValue) (75Q DEFAULTFONT 61Q BOLDFONT 44Q CompileRules 23Q compilerOptions 16Q compilerOptions 4 compilerOptions) (105Q " not on for ") RuleSet.On D1 (I 1 compilerOption I 0 self) 4A@g (@g@g Ah @Hg HkIh(51Q FetchMethodOrHelp 36Q PutValue 33Q \NCONC2 25Q GetValue 7 GetValue) (46Q CompileRules 22Q compilerOptions 16Q compilerOptions 4 compilerOptions) NIL RuleSet.PPRules D1 (I 1 file I 0 self) *@Hg HglIHg HAlI(37Q FetchMethodOrHelp 12Q FetchMethodOrHelp) (34Q PPRules 17Q Source 7 GetPersp) NIL RuleSetMeta.New D1 (P 1 sourcePersp P 0 newRuleSet I 2 name I 1 assocList I 0 self) ;`Bohog b@[g KAlJXd]g MBlLH(57Q FetchMethodOrHelp 36Q GetSuperMethod 24Q INTTY) (54Q SetName 33Q New 21Q noShiftFlg) (16Q "RuleSets need to have names. Please enter a name for the RuleSet." 11Q "RuleSet name: ") RuleSetSource.CompileRules D1 (P 4 ruleSetArgs P 3 ruleStr P 2 rulePos P 1 ruleSet P 0 codeBody I 2 sourceStr I 1 userCompilerOptions I 0 self F 11Q INITIALS) D @^g NglMYAdgA Ig ` o ` o ` h B@_g _OkObA `oB lZBJ [d `B BI I@ Xg`\``LhW gg`oHhh Ig` gAL`G` o ` o ` h h o o ` `(476Q COMPILE 467Q BKSYSBUF 457Q BKSYSBUF 447Q TERPRI 442Q TERPRI 435Q CHANGEFONT 426Q PRIN1 416Q PRIN1 407Q PRIN1 377Q CHANGEFONT 354Q TERPRI 350Q PutValue 335Q DEFINE 301Q EDITDATE 247Q CompileRuleList 237Q GetRules 227Q CountRules 214Q ParseTokens 207Q SUBSTRING 176Q STRPOS 157Q GetRuleSetDeclarations 137Q FetchMethodOrHelp 123Q TERPRI 116Q CHANGEFONT 107Q PRIN1 77Q PRIN1 70Q PRIN1 60Q CHANGEFONT 47Q GetValue 37Q PutValue 12Q FetchMethodOrHelp) (501Q rsName 473Q rsName 432Q DEFAULTFONT 413Q rsName 374Q BOLDFONT 367Q parseErrorFlg 360Q LC 345Q rsName 342Q compiledRules 312Q rsName 307Q RuleSet 304Q * 272Q rsName 263Q parseErrorFlg 256Q rsArgs 253Q self 242Q rsRuleObjects 232Q rsNumRules 217Q parseErrorFlg 162Q parseErrorFlg 134Q GetSource 113Q DEFAULTFONT 74Q rsName 55Q BOLDFONT 52Q rsName 44Q name 33Q compilerOptions 17Q RuleSet 7 GetPersp) ( 464Q "N " 454Q "ST " 423Q " to ByteCodes." 404Q "Compiling " 316Q (Lisp code) 172Q "********" 104Q " to Lisp." 65Q "Compiling ") RuleSetSource.EditRules D1 (P 10Q rulePos P 7 workSpace P 6 doneFlg P 5 sourceRules P 4 ruleSet P 3 oldSourceRules P 2 compOptions P 1 command P 0 needToCompileFlg I 1 coms I 0 self F 27Q TTYINEDITWINDOW) ip@_g _OglO\@_g _OkO[d]Lg AghbNAAb` YdggiM ]Idg+iM oM l_MO ] ]gIdgmHNhIg+g@_g _OglOg ZgJ@_ g _O JMlO`?i@LM` W. *g#h@_$g _"O$hMlO"hXIdgW. i^g@LM Idg` g` gL_(g _&O(kO&Idg0Lg _ o _,g _*O,kO*mgK]cIg[oi i Jh(1000Q TERPRI 773Q PRIN1 723Q FetchMethodOrHelp 710Q WRITE 675Q GetClassRec 672Q GetValue 635Q FetchMethodOrHelp 613Q CLEARBUF 607Q APPLY 572Q FNTYP 550Q SaveRules 527Q SHRINKW 467Q FetchMethodOrHelp 440Q SHRINKW 432Q SaveRules 372Q FetchMethodOrHelp 350Q GetValue 324Q FetchMethodOrHelp 250Q RuleSourceEdit 244Q CONCAT 241Q SUBSTRING 233Q GetRSAllDeclString 222Q STRPOS 211Q GetRuleSetDeclarations 167Q RuleSourceEdit 152Q UE 137Q MENU 101Q MakeEditMenu 73Q GetValue 47Q FetchMethodOrHelp 17Q FetchMethodOrHelp) (756Q Help 743Q Undo! 720Q Edit 667Q workSpace 657Q EditWS 632Q Inspect 621Q InspectRuleSet 604Q rsName 601Q DF 567Q rsName 560Q DF 540Q Save 517Q STOP 464Q CompileRules 455Q parseErrorFlg 446Q Compile 427Q rsRuleObjects 413Q parseErrorFlg 367Q CompileRules 356Q LC 345Q compilerOptions 334Q RuleSet 321Q GetPersp 313Q LC 305Q OK&LispCompile 300Q parseErrorFlg 265Q OK 256Q OK&LispCompile 177Q EditAllDecls 157Q EditRules 144Q UE 134Q reEditMenu 106Q EditRules 76Q rsName 70Q name 44Q GetSource 27Q RuleSet 14Q GetPersp) ( 767Q "Use OK to Compile the rules, save them, and exit. Use OK&LispCompile to compile the Lisp function after Rule compiling Use EditRules to edit the rules. Use EditAllDecls to edit the rules, showing all declarations. Use STOP to exit without compiling or saving. Use Undo! to restore the original RuleSet. Use UE to go into a Lisp user exec. Use DF to edit the compiled lisp code for the RuleSet. Use Compile to compile the rules without exiting. Use InspectRuleSet to inspect the RuleSet object. Use Help to get this list." 705Q "Class for Workspace not found." 216Q "********") RuleSetSource.GetSource D1 (P 11Q ruleNum P 5 numRules P 4 ruleSet P 3 ruleSource P 2 str P 1 declStr P 0 CRLF I 0 self) e oq@_g OglN\d YHZLg j]dk OO @O g [JHdK Ok_IoHJ (142Q CONCAT 116Q CONCAT 105Q GetValue 77Q GetNthValue 51Q GetValue 37Q GetRSDeclString 17Q FetchMethodOrHelp) (102Q source 46Q numRules 25Q RuleSet 14Q GetPersp) (135Q "********" 3 " ") RuleSetSource.PPRules D1 (I 1 file I 0 self F 2 PPDefault) ARb`A oA @Hg HglIg A A `A oA @g A oA @g A `A A @Hg HkIA A @(224Q TERPRI 217Q PRIN1 204Q FetchMethodOrHelp 171Q TERPRI 164Q CHANGEFONT 154Q PRIN1 150Q GetValue 140Q PRIN1 127Q PRIN1 123Q GetValue 113Q PRIN1 102Q CHANGEFONT 73Q TERPRI 66Q PRIN1 62Q GetValue 41Q FetchMethodOrHelp 25Q PRIN1 14Q CHANGEFONT) (201Q GetSource 160Q DEFAULTFONT 145Q editor 120Q edited 76Q COMMENTFONT 57Q name 46Q RuleSet 36Q GetPersp 10Q BOLDFONT) (134Q " by " 107Q "Last Edited: " 21Q "RuleSet ") ListRuleSets D1 (P 24Q rsn P 23Q num P 20Q method P 6 fileHandle P 5 ruleSet P 4 ruleSetName P 3 class P 2 numNames P 1 ruleSetNames P 0 listFile I 1 pressFileName I 0 ruleSetsSpec) EAg @d\ [S0K_g _OglO&dKO g \dh_OO__O _O@hYHg ^K$I ZdIkO$>N AN N h_g _ONlOgN Nj N _(O&O"O( ]cO( k N N oN N N M_g _ONlOO&JgN Nj N N N O$_$O&k_&>(462Q TERPRI 455Q TERPRI 450Q TERPRI 443Q POSITION 435Q PRIN3 403Q FetchMethodOrHelp 371Q TERPRI 364Q TERPRI 357Q PRIN1 346Q TERPRI 341Q TERPRI 334Q SPACES 327Q PRIN1 317Q GetObjectRec 274Q TERPRI 267Q POSITION 261Q PRIN3 235Q FetchMethodOrHelp 223Q DELFILE 216Q EMPRESS 210Q CLOSEF 167Q FLENGTH 157Q OPENFILE 135Q LAST 75Q GetMethod 37Q FetchMethodOrHelp 20Q GetClassRec) (431Q % 400Q PPRules 255Q % 232Q PP 154Q OUTPUT 72Q RuleSet 47Q Methods 34Q List 5 {CORE}ListRules) ( 353Q "*********************************************") MakeEditMenu D1 NIL A`<`dododg dgjdndhHdI NIL (76Q reEditMenu 43Q DEFAULTMENUHELDFN 34Q CLRPROMPT 7 MENUTYPE# 2 reEditMenu) ( 25Q "Rule Edit Options" 15Q (OK OK&LispCompile EditRules Help EditAllDecls EditWS STOP Undo! UE DF Compile Save InspectRuleSet)) REObject D1 (I 0 ^ws) (2 RE) NIL NIL ReinstallRuleSets D1 (P 5 selector P 2 ruleSetName P 1 methods P 0 class I 0 className) :P@ Xd\g LglKdHMg Z@MJ h(60Q DefRSM 50Q GetMethod 17Q FetchMethodOrHelp 6 GetClassRec) (45Q RuleSet 24Q Methods 14Q List) NIL RuleSourceEditA0001 D1 (NAME ERRORSET L (2 ERRORSET.W 1 ERRORSET.V 0 ERRORSET.U) F 0 source F 1 RESETY) ohdohdP ci(24Q TTYIN 2 SET.TTYINEDIT.WINDOW) NIL ( 15Q (STRING NORAISE REPEAT) 7 " ") RuleSourceEdit D1 (P 2 RESETZ P 1 RESETY P 0 LISPXHIST I 0 source F 3 TTYINEDITWINDOW F 4 TEDITRULESFLG F 5 LISPXHIST F 6 RESETVARSLST) GSgo`o g T@Si U!Vog hgZ JI(102Q ERROR! 75Q RESETRESTORE 63Q RuleSourceEditA0001 43Q TEDIT 32Q FNTYP 24Q PUTWINDOWPROP 21Q CONCAT) (71Q ERROR 60Q INTERNAL 27Q TEDIT 12Q rsName 3 TITLE) ( 55Q (DUMMY.FOR.ERRORSET) 16Q " (StopGap Version)" 7 "TTYIN Edit of RuleSet ") SaveRules D1 (P 6 rule P 5 I P 1 edited P 0 editor I 3 ruleObjects I 2 sourceRules I 1 ruleSet I 0 ruleSetSource F 7 USERNAME F 10Q StudentName F 11Q numRules) > WdgWXYB `Ag` Ag` Ag` Ag` Ag` Ag` Ag0`d KJh\J&L Ag` Ag`g h` Ag` Ag`g h` @gH @gI CB BA `c`bAg` @g `CkLhMKNgI NgH @MN LMkؽ(462Q PutNthValue 453Q PutValue 442Q PutValue 405Q PutValue 376Q PutValue 347Q GetRules 336Q CountRules 330Q PutValue 320Q PutValue 310Q PutValue 305Q ClassName 273Q GetObjectRec 256Q PutValue 244Q PutValue 241Q ClassName 227Q GetObjectRec 212Q PutValue 200Q PutValue 153Q UnParseTerm 132Q PutValue 120Q PutValue 106Q PutValue 74Q PutValue 62Q PutValue 47Q PutValue 44Q ClassName 26Q GetRuleSetDeclarations 21Q DATE) (447Q editor 436Q edited 410Q rsNumRules 402Q indexedVars 373Q rsNumRules 370Q numRules 361Q rsRuleObjects 353Q rsNumRules 341Q rsNumRules 324Q edited 314Q editor 302Q rsRuleClass 270Q Rule 265Q rsRuleClass 262Q ruleClass 253Q rsAuditSpecification 250Q metaAssignments 236Q rsAuditClass 224Q StandardAuditRecord 221Q rsAuditClass 216Q auditClass 207Q rsCompilerOptions 204Q compilerOptions 144Q rsWhileCondition 136Q whileCondition 127Q controlType 124Q controlStructure 115Q rsArgs 112Q args 103Q debugVars 100Q debugVars 71Q tempVars 66Q tempVars 57Q taskVars 54Q taskVars 41Q wsClass 36Q workSpace 31Q wsClass 10Q LOOPSCOURSE) () SearchStackForWorkSpace D1 (P 4 I P 0 ruleSetName) J0nkLK&L X (H Zg JglIH gHj Lk\(101Q EVALV 76Q STKPOS 47Q FetchMethodOrHelp 40Q $! 32Q $! 22Q STKNTHNAME) (71Q self 54Q RuleSet 44Q InstOf!) NIL CloseREWindow D1 (F 0 reTraceWindow F 1 reInspectWindow) P Qd  (14Q CLOSEW 10Q CLOSEW) NIL NIL CountRules D1 (P 2 rulePos P 1 str P 0 char I 0 sourceStr) 0i1o@ lZ@J YjHI XdgKkذK(36Q GNC 24Q SUBSTRING 13Q STRPOS) (43Q ;) (7 "********") DefRSM D1 (P 1 classRec P 0 ruleSet I 2 ruleSetName I 1 selector I 0 className) `@ Yo@o hAo b@d``@ bB9@A bg [g KhBlJXg@ H]g MkL Xg@ B XHg@ HgA IAH IAHg H (252Q GetObjectName 246Q PutMethod 235Q PutMethod 232Q GetObjectName 224Q PutValue 214Q PutValue 202Q GetObjectRec 175Q PutValue 165Q GetObjectRec 152Q FetchMethodOrHelp 141Q PutValue 120Q FetchMethodOrHelp 111Q GetObjectRec 100Q MethName 65Q ClassName 37Q PromptRead 24Q PROMPT 6 GetClassRec) (243Q RuleSet 220Q selector 210Q className 171Q workSpace 147Q ER 135Q workSpace 115Q New 106Q RuleSet 57Q classTYPE# 51Q instanceTYPE#) ( 34Q "Type selector for RuleSet Method: " 21Q " not found." 14Q "Class") GetRules D1 (P 7 char P 6 ruleStr P 5 semiPos P 4 rule P 3 rules P 2 rulePos P 1 str P 0 ruleCount I 1 ruleSet I 0 sourceStr) j o@ lغ@J gI ]d`_g _OkOIkM ^kd _/LgN LgA HkظLgH KLh IMkذoNl K(177Q SUBSTRING 153Q \NCONC2 143Q PutValue 126Q PutValue 115Q PutValue 101Q SUBATOM 73Q SUBSTRING 52Q FetchMethodOrHelp 34Q STRPOS 24Q SUBSTRING 13Q STRPOS) (137Q ruleNumber 122Q ruleSet 111Q source 47Q New 42Q rsRuleClass 30Q ;) (166Q (% % ) 7 "********") MINUSMINUS D1 (L (1 b 0 a)) @AlNIL NIL NIL PAUSE D1 (P 0 msg I 3 msg4 I 2 msg3 I 1 msg2 I 0 msg1) 3C@ABC B@AB A@A @oXdho i(57Q INTTYL 35Q CONCAT 25Q CONCAT 13Q CONCAT) NIL (54Q "Type Return when ready to Continue" 45Q "PAUSE: Type RETURN to continue.") PLUSPLUS D1 (L (1 b 0 a)) @AlNIL NIL NIL PutAuditRec D1 (I 3 auditRecord I 2 newValue I 1 auditVarName I 0 auditObject) @ACg @AB (16Q PutValue 10Q PutValue) (5 reason) NIL PutClassAuditRec D1 (I 3 auditRecord I 2 newValue I 1 varName I 0 self) @ACg @AB (16Q PutClassValue 10Q PutClassValue) (5 reason) NIL REA1657 D1 (NAME ERRORSET L (2 ERRORSET.W 1 ERRORSET.V 0 ERRORSET.U) P 0 ^ws F 1 RESETVARSLST F 2 reWindow F 3 wsName F 4 RESETY) g hhQcgRg hhQcgRhhhQcSHohoi Xg$HgHdg Xo ic(172Q RE1 164Q WRITE 153Q $! 122Q INTTY 77Q SearchStackForWorkSpace 37Q TTYDISPLAYSTREAM 34Q GETWINDOWPROP 10Q TTY.PROCESS 5 THIS.PROCESS) (145Q OK 135Q Ok 126Q ok 54Q CLOSEW 31Q DSP 25Q TTYDISPLAYSTREAM 2 TTY.PROCESS) (161Q "Work space not found." 116Q "Type name of workSpace. Type ok to quit." 111Q "Work space: ") RE D1 (P 2 RESETZ P 1 RESETY P 0 LISPXHIST I 0 wsName F 3 reWindow F 4 LISPXHIST F 5 RESETVARSLST) [S5nl nXlho cgg gS Sg S T!Uog hgZ JI(126Q ERROR! 121Q RESETRESTORE 107Q REA1657 70Q CLEARW 63Q PUTWINDOWPROP 53Q DSPSCROLL 43Q PUTWINDOWPROP 30Q CREATEW) (115Q ERROR 104Q INTERNAL 60Q RIGHTBUTTONFN 47Q ON 40Q CloseREWindow 35Q CLOSEFN) (101Q (DUMMY.FOR.ERRORSET) 25Q "Rule Exec (Stopgap Version)") RE1A0001 D1 (NAME ERRORSET L (2 ERRORSET.W 1 ERRORSET.V 0 ERRORSET.U) F 0 ^comExpr) P i(6 WRITE 3 EVAL) NIL () RE1 D1 (P 6 prevTokens P 5 ^comExpr P 4 ^comStr P 3 ^ruleSetNames P 2 self P 1 ^doneExprs P 0 whyTokens F 7 ^ws F 10Q reTraceWindow F 11Q reWindow) ooRWZW ohdo \o Lo W Lo o L `dHIi`^gh g `oM `o l(245Q REFocusRuleSet 241Q RE1A0001 225Q WRITE 207Q CompileRule1 175Q \NCONC2 151Q REAskWhy 134Q ParseTokens 126Q WRITE 116Q STREQUAL 104Q UE 100Q CLOSEW 72Q STREQUAL 61Q STREQUAL 45Q TTYIN 27Q TOTOPW 15Q SetUpRE) (231Q parseErrorFlg 214Q rsCompilerDebugFlg 204Q specialFlg 200Q ruleSetTokens 170Q ; 164Q ruleSetTokens 140Q ruleSetTokens) ( 236Q (DUMMY.FOR.ERRORSET) 221Q "^comExpr=" 123Q "To inspect a work space, use LEFT mouse button in trace menu. To print a RuleSet, use MIDDLE mouse button in trace menu. To evaluate a Rule expression, type it in this window. To get the LISP User Exec, type UE. To quit, type OK." 113Q "?" 67Q "ue" 56Q "UE" 42Q (STRING NORAISE) 34Q "re: " 7 (OK Ok ok DONE Done done BYE Bye bye) 3 (WHY Why why)) REAskWhy D1 (P 1 rule P 0 compiledExpr F 4 prevTokens) @`dg'Toi `i i i `gh XdgHgg3HgHih H Yo h[g KkJo(210Q FetchMethodOrHelp 177Q TERPRI 173Q WRITE 161Q EVAL 154Q \NCONC2 105Q CompileRule1 76Q \NCONC2 62Q TERPRI 55Q TERPRI 50Q PRIN1 37Q PRIN1) (205Q Print 143Q WhichRule? 134Q GetClassValue 126Q WhichRule? 117Q GetValue 101Q ruleSetTokens 71Q ; 66Q ruleSetTokens 43Q ruleSetTokens 26Q ruleSetTokens 16Q ; 11Q ruleSetTokens 5 ruleSetTokens) ( 224Q "eh?" 170Q "Rule not known." 33Q " -- That is, why ") REFocusRuleSet D1 (F 2 ^ws) \Rd`d` dHg HglIhdgohdddd(42Q FetchMethodOrHelp 24Q GetLispClass) (131Q rsTaskFlg 125Q ruleObject 121Q rsAuditFlg 115Q rsBreakFlg 111Q rsTraceFlg 105Q ruleNumber 76Q controlType 73Q DOALL 70Q tempVars 64Q taskVars 60Q wsVars 47Q IVS 37Q List! 27Q wsClass 14Q classTYPE# 5 instanceTYPE#) (102Q -23420Q) RETraceSelectFn D1 (P 0 ws I 2 key I 1 menu I 0 item F 3 ^reInspectWindow) <0Bdg@XZg JkIcgg@ o h(70Q EVAL.IN.TTY.PROCESS 57Q GetObjectRec 26Q FetchMethodOrHelp) (52Q _ 44Q MIDDLE 23Q Inspect 7 LEFT) (63Q (ER)) RSGetFn D1 (P 1 ruleValue P 0 ruleSet I 5 type I 4 activeVal I 3 propName I 2 localSt I 1 varName I 0 self) 30@Ag XdgH o Hdl BkJ(52Q GetObjectName 37Q ERROR 27Q Class? 15Q GetObjectRec 12Q GetValue) (23Q RuleSet 7 RSGet) (34Q "RuleSet not found for active value.") RSPutFn D1 (P 1 ruleValue P 0 ruleSet I 5 type I 4 activeVal I 3 propName I 2 newValue I 1 varName I 0 self) >0@Ag XdgH o Hdl BkJYDI@ACE (73Q PutLocalState 52Q GetObjectName 37Q ERROR 27Q Class? 15Q GetObjectRec 12Q GetValue) (23Q RuleSet 7 RSPut) (34Q "RuleSet not found for active value.") RuleSetStop D1 (L (2 ^reason 1 ^status 0 stopValue) F 0 ^value) @cNIL NIL NIL RuleSetTransfer D1 (P 0 ruleSetPos I 0 ruleSetArgs) Bg Ho mH gmH gmHd g@Hdid h(76Q ENVAPPLY 61Q STKNTH 45Q STKNTHNAME 31Q STKNTHNAME 21Q ERROR 5 STKPOS) (65Q RuleSet.Run 50Q *ENV* 34Q APPLY 2 RuleSet.Run) (16Q "Must be inside a RuleSetR.Run to transfer") SetUpRE D1 (P 15Q WS P 11Q I P 4 wRegion P 3 mPosition P 2 traceMenu P 1 stkName P 0 ruleSetNames F 16Q controltype F 17Q rsTraceFont F 20Q reWindow F 21Q reTraceWindow) gcnk2 OOO YuOX`dHdkdWdgdg dgjdndh_dO d lZW \dlLLl2[JhK c"h YI ^g NglMBgIj  IOoO ooIo h_OOh__Ok_O&_(331Q CONCAT 310Q GetObjectName 271Q EVALV 266Q STKPOS 242Q FetchMethodOrHelp 233Q GetObjectRec 225Q GetObjectRec 216Q ADDMENU 162Q \INSUREWINDOW 34Q STKNTHNAME 12Q REFocusRuleSet) (261Q self 247Q RuleSet 237Q InstOf! 144Q MENU 111Q DEFAULTMENUHELDFN 102Q CLRPROMPT 73Q RETraceSelectFn 46Q MENUTYPE# 5 DOALL) ( 325Q " rules" 320Q "Middle to EDIT " 314Q " " 303Q "Left to INSPECT ") TraceLHS D1 (I 2 ruleNum I 1 ruleLab I 0 ruleSetName) Hoi `i ABi `i oi `i @i `i i i(104Q TERPRI 77Q CHANGEFONT 67Q PRIN1 61Q CHANGEFONT 51Q PRIN1 40Q CHANGEFONT 30Q PRIN1 17Q CHANGEFONT 7 PRIN1) (73Q DEFAULTFONT 55Q BOLDFONT 34Q DEFAULTFONT 13Q BOLDFONT) (45Q " in RuleSet " 3 "Testing rule ") TraceRHS D1 (I 3 ^value I 2 ruleNum I 1 ruleLab I 0 ruleSetName) Hoi `i ABi `i oi `i @i `i i C(104Q TERPRI 77Q CHANGEFONT 67Q PRIN1 61Q CHANGEFONT 51Q PRIN1 40Q CHANGEFONT 30Q PRIN1 17Q CHANGEFONT 7 PRIN1) (73Q DEFAULTFONT 55Q BOLDFONT 34Q DEFAULTFONT 13Q BOLDFONT) (45Q " in RuleSet " 3 "Executing rule ") WRITETTY D1 (P 1 I P 0 nargs) ejHIIkYa i(31Q TERPRI 23Q PRIN1) NIL NIL WhichRule? D1 (P 0 auditRecord I 2 classFlg I 1 varName I 0 obj) +B@Ag @Ag Xddgdg h(46Q GetValue 25Q GetValue 14Q GetClassValue) (43Q rule 35Q ? 22Q reason 11Q reason) NIL (PRETTYCOMPRINT LOOPSRULESCOMS) (RPAQQ LOOPSRULESCOMS ((* Copyright (c) 1982 by Xerox Corporation) (* * Package for Rule-Oriented Programming in LOOPS. - File LOOPSRULES contains the basic class definitions. File LOOPSRULESP contains the rule parser. - File LOOPSRULESC contains the rule compiler. File LOOPSRULESD interprets RuleSet declarations.) (* Written in August 1982 by Mark Stefik, Alan Bell, and Danny Bobrow) (* Classes for Rule-Oriented Programming in LOOPS.) (CLASSES * LOOPSRULESCLASSES) (METHODS Rule.Print RuleSet.CompileRules RuleSet.CopyRules RuleSet.ER RuleSet.EditRules RuleSet.Off RuleSet.On RuleSet.PPR RuleSet.PPRules RuleSetMeta.New RuleSetSource.CompileRules RuleSetSource.EditRules RuleSetSource.GetSource RuleSetSource.PPRules) (FNS * LOOPSRULESFNS) (FNS * RULESETMISCFNS) (VARS TEDITRULESFLG (^rs NIL) (^ws NIL) (^caller NIL) (^task NIL) (reWindow NIL) (reTraceWindow NIL) ( reInspectWindow NIL) (rsTraceFont (FONTCREATE (QUOTE GACHA) 8))) (P (CLDISABLE (QUOTE ^))) (P ( INTERRUPTCHAR 6 (LIST (FUNCTION RE)))) (MACROS RunRS) (DECLARE: DONTEVAL@LOAD DOEVAL@COMPILE DONTCOPY COMPILERVARS (ADDVARS (NLAMA) (NLAML) (LAMA WRITETTY))))) (RPAQQ LOOPSRULESCLASSES (Rule RuleSet RuleSetMeta RuleSetNode RuleSetSource StandardAuditRecord Task TestAuditRecord)) (DEFCLASSES Rule RuleSet RuleSetMeta RuleSetNode RuleSetSource StandardAuditRecord Task TestAuditRecord) (DEFCLASS Rule (MetaClass Class doc (* * Class for describing rules as objects. Instances of this class (rule objects) are created as a side-effect when RuleSets are compiled in audit mode.) Edited: ( * mjs: "12-FEB-83 12:19")) (Supers Object) (InstanceVariables (source NIL doc (* string that was the source of the rule in the RuleSet.)) (edited NIL doc (* person who edited the rule.)) (editor NIL doc (* time and date of the editing.)) (ruleNumber 0 doc (* sequence number of the rule in the RuleSet at the time of editing.)) (ruleSet NIL doc (* RuleSet to which this rule belongs.)))) (DEFCLASS RuleSet (MetaClass RuleSetMeta doc (* * A RuleSet is a set of rules, together with methods for interpreting them.) Edited: (* dgb: "31-OCT-83 14:20")) (Supers NamedObject Perspective Object) ( InstanceVariables (compiledRules NIL doc (* Name of Lisp Function for Rules.)) (workSpace NIL doc (* name of class for work space.)) (args NIL doc (* arguments to the RuleSet other than self.)) (tempVars NIL doc (* temporary variables.)) (taskVars NIL doc (* Task variables.)) (debugVars NIL doc (* variables to be printed during a trace or break.)) (numRules NIL doc (* Number of Rules in RuleSet.)) (controlStructure doAll doc (* control structure for rules.)) (whileCondition NIL doc (* while condition for RuleSet.)) (compilerOptions NIL doc (* Compilation options.)) (auditClass #$ StandardAuditRecord doc (* name of class for audit records.)) (metaAssignments NIL doc (* RuleSet specific meta-assignment statements.)) (ruleClass #$Rule doc (* name of class for rule objects.)) ( taskClass NIL doc (* Name of class used for tasking.)) (perspectiveNode #$RuleSetNode myViewName RuleSet))) (DEFCLASS RuleSetMeta (MetaClass MetaClass doc (* * MetaClass for RuleSets.) Edited: (* mjs: "29-SEP-82 09:14")) (Supers Template)) (DEFCLASS RuleSetNode (MetaClass Template doc (* Node for RuleSet perspectives.) Edited: (* mjs: "29-SEP-82 10:43")) (Supers Node Object) (InstanceVariables (perspectives NIL Source #$RuleSetSource RuleSet #$RuleSet))) (DEFCLASS RuleSetSource (MetaClass Template doc (* * Source code for a RuleSet. Contains editing information about the RuleSet, and an indexed list of rule objects.) Edited: (* dgb: "31-OCT-83 14:20" )) (Supers DatedObject Perspective VarLength) (InstanceVariables (perspectiveNode #$RuleSetNode myViewName Source) (edited NIL doc (* Date last edited.)) (editor NIL doc (* Last User to edit the rules.)))) (DEFCLASS StandardAuditRecord (MetaClass Class doc (* * Standard (default) audit record for makeing audit trails of RuleSet invocations.) Edited: (* mjs: " 9-JUN-83 09:53")) (Supers Object) ( ClassVariables (metaAssns (rule _ ruleObject) doc (* default meta-assignment statements associated with this audit record.))) (InstanceVariables (rule NIL doc (* Rule used in setting the value.)))) (DEFCLASS Task (MetaClass Class doc (* * Representation of the invocation of a RuleSet. Used in creating variations of agenda control structures. Similar to the idea of closures.) Edited: (* mjs: " 7-JUN-83 10:24")) (Supers Object) (InstanceVariables (ruleNumber 1 doc (* Number of the next rule to be executed. Used for RuleSet debugging and for doNext and cycleNext.)) (rs NIL doc (* RuleSet that was invoked.)) (self NIL doc (* workSpace given to the RuleSet.)) (value NIL doc (* value returned by the RuleSet)) (status Started doc (* Execution status. Examples: Started, Done, Aborted, Suspended.)) (reason NotKnown doc (* Reason for the status. Examples: Success, NoSpace, Blocked)) (caller NIL doc ( * Caller of the RuleSet.)))) (DEFCLASS TestAuditRecord (MetaClass Class doc (* For Test cases.) Edited: (* mjs: "11-NOV-82 09:30")) (Supers StandardAuditRecord) (InstanceVariables (^rs NIL) (^ruleNumber 0) (cf .3) (support NIL))) (METH Rule Print (file) (* * Print out formatted information about a rule - the source, RuleSet, and editing information.)) (METH RuleSet CompileRules NIL (* Compile the RuleSet.)) (METH RuleSet CopyRules (newName) (* Creates a new RuleSet containing a copy of the rules.)) (METH RuleSet ER NIL (* Shorthand for EditRules) (method RuleSet.EditRules)) (METH RuleSet EditRules NIL (* Forward the Edit message to the Source perspective of the RuleSet.)) (METH RuleSet Off (compilerOption) (* Turn off a compiler option.)) (METH RuleSet On (compilerOption) (* Turn on a compiler option.)) (METH RuleSet PPR NIL (* Shorthand for PPRules) (method RuleSet.PPRules)) (METH RuleSet PPRules NIL (* PrettyPrint the Rules.)) (METH RuleSetMeta New (name) (* * Create a new rule set.)) (METH RuleSetSource CompileRules (^userCompilerOptions sourceRules) (* * Compile the Rules for a RuleSet from the Rule Language into Interlisp.)) (METH RuleSetSource EditRules NIL (* Edit the rules associated with a RuleSetSource.)) (METH RuleSetSource GetSource (allDeclFlg) (* Compute the source string for a RuleSet for printing or editing. If allDeclFlg is T, the computed string will include extra rule declarations beyond the basic set, even if they have no current value.)) (METH RuleSetSource PPRules (file) (* Pretty Print the Rules)) (RPAQQ LOOPSRULESFNS (ListRuleSets MakeEditMenu REObject ReinstallRuleSets RuleSourceEdit SaveRules SearchStackForWorkSpace)) (RPAQQ RULESETMISCFNS (CloseREWindow CountRules DefRSM GetRules MINUSMINUS PAUSE PLUSPLUS PutAuditRec PutClassAuditRec RE RE1 REAskWhy REFocusRuleSet RETraceSelectFn RSGetFn RSPutFn RuleSetStop RuleSetTransfer SetUpRE TraceLHS TraceRHS WRITETTY WhichRule?)) (RPAQQ TEDITRULESFLG T) (RPAQQ ^rs NIL) (RPAQQ ^ws NIL) (RPAQQ ^caller NIL) (RPAQQ ^task NIL) (RPAQQ reWindow NIL) (RPAQQ reTraceWindow NIL) (RPAQQ reInspectWindow NIL) (RPAQ rsTraceFont (FONTCREATE (QUOTE GACHA) 8)) (CLDISABLE (QUOTE ^)) (INTERRUPTCHAR 6 (LIST (FUNCTION RE))) (PUTPROPS RunRS MACRO ((rs ws . args) (APPLY* (COND ((LITATOM rs) rs) (T (GetObjectName rs))) ws . args))) (PUTPROPS LOOPSRULES COPYRIGHT ("Xerox Corporation" 1983 1984)) NIL