(FILECREATED "29-Feb-84 16:05:15" ("compiled on " {INDIGO}SOURCES>LOOPSDATABASE.;19) "25-Feb-84 17:16:34" recompiled exprs: KBReadBoot ReadFacts ReadLayerIndex ReadOverFacts in LOOPS.SYSOUT dated "29-Feb-84 11:24:22") (FILECREATED "29-Feb-84 16:04:12" {INDIGO}SOURCES>LOOPSDATABASE.;19 78031 changes to: (FNS KBReadBoot ReadFacts ReadLayerIndex ReadOverFacts) previous date: "10-Feb-84 23:29:57" {INDIGO}SOURCES>LOOPSDATABASE.;18) Environment.AssocKB D1 (I 1 akb I 0 self F 2 DefaultKBName) A dgA AoC@gA A Ao g \g LkK Og OAlMOEgA dgdgA_g OkNgwA_g _OkO@g@g ZdlHhHh @g Y@gg Hg gH_g _OIg lOAo h(435Q ERROR 414Q GetValue 400Q FetchMethodOrHelp 361Q GetValue 351Q PutValue 334Q GetValue 324Q PutValue 321Q \NCONC2 277Q GetValue 251Q FetchMethodOrHelp 223Q FetchMethodOrHelp 174Q ClassName 141Q FetchMethodOrHelp 120Q FetchMethodOrHelp 111Q GetObjectRec 102Q ERROR 71Q KBFullName 47Q TYPENAME 42Q ERROR 27Q GetValue 11Q GetValue) (411Q nameTable 375Q Connect 364Q Open 356Q status 346Q BootNeeded 343Q status 331Q currentWriter 274Q contents 270Q contents 246Q CurrentState 235Q KB 220Q CopyShallow 206Q KBState 200Q Layer 163Q instance 136Q SetName 115Q New 106Q KBState 61Q ATOM 53Q LITATOM 24Q connectedEnvs 6 connectedEnvs) (432Q "is not an atom, Layer, KB or KBState. Cannot be added to KB contents" 77Q " is not a known Knowledge base" 37Q "No new aditions can be made." 20Q "currently connected to ") KB.Close D1 (P 0 c I 1 env I 0 self) D@gA@g @g @g d!HZg JAlIh(63Q FetchMethodOrHelp 44Q GetValue 34Q CloseKBFile 31Q GetValue 21Q PutValue 16Q DREMOVE 13Q GetValue) (60Q Close 41Q contents 26Q name 10Q connectedEnvs 3 connectedEnvs) NIL KB.ConnectForOutput D1 (P 0 item I 1 nameTable I 0 self) 1@g g @g d!HZg JkIh(42Q FetchMethodOrHelp 23Q GetValue 14Q OpenKBFile 6 GetValue) (37Q Connect 20Q contents 11Q BOTH 3 name) NIL KB.CopyFileLayer D1 (P 12Q posDif P 11Q nameCount P 10Q entityCount P 7 indexPosition P 6 toPos P 5 newLayer P 4 toFile P 3 fromPos P 2 fromFile I 1 layer I 0 self) l@g @g #@o@g @g ho Ag g Ag @g g Hg HkIJ L JAg L ^MgL Mg@g MgN Mg@g NK_dJ _L J _L J _L JLJ O O_jJ L J OL OkٰO_jJ L J L OkٰlL NL Ag @g @_g _OMlOM_ g _O kO@(536Q FetchMethodOrHelp 510Q FetchMethodOrHelp 477Q CloseKBFile 474Q GetValue 465Q CloseKBFile 462Q GetValue 453Q PRINT 446Q SPACES 431Q PRINT 425Q READ 420Q PRINT 414Q READ 371Q PRINT 362Q READ 355Q PRINT 351Q READ 335Q COPYBYTES 330Q GETFILEPTR 322Q PRINT 314Q READ 310Q PRINT 302Q READ 276Q PRINT 267Q READ 255Q PutValue 252Q GetValue 237Q PutValue 227Q PutValue 224Q GetValue 211Q PutValue 200Q GETEOFPTR 174Q SETFILEPTR 171Q GetValue 161Q OUTPUT 155Q INPUT 137Q FetchMethodOrHelp 125Q GetObjectRec 117Q OpenKBFile 114Q GetValue 105Q GetValue 76Q OpenKBFile 70Q GetValue 60Q ERROR 45Q GetValue 34Q GetValue 16Q GetValue 6 GetValue) (533Q Destroy 505Q AddToContents 471Q name 457Q kbName 247Q name 243Q assocKB 233Q position 221Q name 215Q kbName 205Q file 166Q position 134Q New 122Q Layer 111Q name 102Q position 73Q INPUT 65Q kbName 42Q currentWriter 31Q connectedEnvs 13Q currentWriter 3 connectedEnvs) (55Q "Cannot be added to when connected to any environment" 25Q "currently connected to") KB.CopyFileLayers D1 (P 0 layer I 1 layerDescription I 0 self) 6Ag d!@Zg JHlI@Ig IkJ(55Q FetchMethodOrHelp 25Q FetchMethodOrHelp 6 GetValue) (52Q WriteBoot 22Q CopyFileLayer 3 contents) NIL KB.Disconnect D1 (I 1 env I 0 self) &@g @gg @Hg HAlI(33Q FetchMethodOrHelp 20Q PutValue 6 PutValue) (30Q Close 15Q Disconnected 12Q status 3 currentWriter) NIL KB.FileName D1 (I 0 self) @g (11Q KBFullName 6 GetValue) (3 name) NIL KB.FreezeKB D1 (P 2 item P 1 tail I 1 name I 0 self) h @g HYhZ\g LglK?AJg 4Jg g'IJ^g NkM_g _OkOZJI(124Q FetchMethodOrHelp 106Q FetchMethodOrHelp 67Q GetValue 55Q GetValue 31Q FetchMethodOrHelp 6 GetValue) (121Q CurrentState 103Q MyKB 72Q CURRENT 64Q contents 52Q name 36Q KBState 26Q InstOf 3 contents) NIL KB.PrintContentsA1464 D1 (NAME ERRORSET L (2 ERRORSET.W 1 ERRORSET.V 0 ERRORSET.U) P 0 item F 3 file F 4 self F 5 RESETVARSLST F 6 RESETY) ghhUc oS `S Tg S `S oS Tg S S l jS oS Tg S S oS S Tg d!HZg JkI`S c i(246Q CHANGEFONT 224Q FetchMethodOrHelp 205Q GetValue 175Q TERPRI 170Q PRIN1 157Q TERPRI 152Q PRIN1 146Q GetValue 136Q PRIN1 125Q TAB 115Q TERPRI 110Q PRIN1 104Q GetValue 74Q PRIN1 63Q CHANGEFONT 53Q PRIN1 47Q GetValue 37Q CHANGEFONT 27Q PRIN1 5 DSPFONT) (242Q DEFAULTFONT 221Q PrintContents 202Q contents 143Q owners 101Q created 57Q DEFAULTFONT 44Q name 33Q LAMBDAFONT 2 DSPFONT) (164Q "Contents:" 132Q "Owners " 70Q " created " 23Q "Knowledge Base ") KB.PrintContents D1 (P 2 RESETZ P 1 RESETY P 0 LISPXHIST I 1 file I 0 self F 3 LISPXHIST F 4 RESETVARSLST) "S!Tog hgZ JI(35Q ERROR! 30Q RESETRESTORE 16Q KB.PrintContentsA1464) (24Q ERROR 13Q INTERNAL) (10Q (DUMMY.FOR.ERRORSET)) KB.SetContents D1 (P 0 item I 1 lst I 0 self) RA9dAHZg JglIH\g LglKHo @gA @gg @(116Q PutValue 104Q PutValue 66Q ERROR 43Q FetchMethodOrHelp 17Q FetchMethodOrHelp) (113Q BootNeeded 110Q status 100Q contents 50Q KBState 40Q InstOf 24Q Layer 14Q InstOf) (63Q "cannot be part of KB contents") KB.ThawKB D1 (P 11Q classForMethod P 10Q obj% P 2 item P 1 tail I 1 name I 0 self) v @g qHYhZ\g LglKMAJg BJg g5Ig ^g NkM Og _OAlOOZJI(134Q FetchMethodOrHelp 113Q FetchMethodOrHelp 104Q GetObjectRec 67Q GetValue 55Q GetValue 31Q FetchMethodOrHelp 6 GetValue) (131Q SetName 110Q New 101Q KBState 72Q CURRENT 64Q contents 52Q name 36Q KBState 26Q InstOf 3 contents) NIL KB.WriteBoot D1 (P 2 nameList P 1 entityList P 0 file I 0 self) }P@g i X@g o @g ghhhYhhZ@\g LIlKJ@g @  @g@g @g gg HIJi (172Q WriteEntityFile 163Q PutValue 150Q GetValue 140Q GetValue 125Q TCONC 121Q UID 115Q GetValue 74Q FetchMethodOrHelp 45Q GetValue 35Q ERROR 26Q GetValue 15Q KBFullName 11Q GetValue) (160Q DisConnected 154Q Connected 145Q connectedEnvs 135Q currentWriter 131Q status 112Q name 71Q AddEntities 50Q BootNeeded 42Q status 23Q name 6 name) (32Q "not an open KB for WriteBoot") KB.WriteEntityFile D1 (P 1 layer P 0 file I 3 assockbName I 2 namedEntities I 1 changedEntities I 0 self) m@g i @g o 1g [g KkJYdgH Ig@g IgC @gI @gg HAB (152Q WriteEntityFile 144Q PutValue 132Q AddValue 122Q PutValue 112Q PutValue 107Q GetValue 74Q PutValue 71Q GETEOFPTR 52Q FetchMethodOrHelp 43Q GetObjectRec 32Q ERROR 23Q GetValue 12Q KBFullName 6 GetValue) (141Q BootNeeded 136Q status 126Q contents 116Q assocKB 104Q name 100Q kbName 65Q position 47Q New 40Q Layer 20Q name 3 name) (27Q "not an open file for WriteChangedEntities") KB.WriteFileLayer D1 (P 2 file P 1 namedEntities P 0 changedEntities I 2 uidTable I 1 kbName I 0 self) L@g g o@ hhhh2Bg Hh@\g LHIAiA @g lK(104Q GetValue 62Q FetchMethodOrHelp 45Q MAPHASH 24Q ERROR 6 GetValue) (101Q name 57Q WriteEntityFile 42Q SelectChangedEntity 11Q Disconnected 3 status) ( 20Q "Trying to write onto a KB which is not connected to ") KBMeta.Close D1 (P 10Q kbname P 7 file P 6 kb P 5 env P 4 kbp I 0 self) c ` HhI\_ *L_ ^g ]#O O OJ KhZHXK&_g _OkO(124Q FetchMethodOrHelp 66Q CLOSEF 60Q OPENP 50Q GetValue 41Q GetObjectRec 30Q OPENP) (121Q Cancel 45Q currentWriter 15Q OpenKBFiles 2 OpenKBFiles) NIL KBMeta.New D1 (P 2 kb P 1 fileName P 0 env I 3 newVersionFlg I 2 envName I 1 kbName I 0 self F 13Q USERNAME)  A bd YCIo @\g LAlKZA gg Yd oI I JgWh BJ X"H^g NglMHg gg _g _OBlOH_g _OJlO(242Q FetchMethodOrHelp 214Q FetchMethodOrHelp 204Q GetObjectRec 170Q GetValue 146Q FetchMethodOrHelp 133Q GetObjectRec 123Q PutValue 110Q CLOSEF 104Q PrintStatus 74Q PRINTDATE 67Q OPENFILE 56Q KBFileName 41Q GetSuperMethod 30Q HELPCHECK 14Q KBFullName 6 KBNameForm) (237Q ConnectOutput 211Q New 201Q Environment 173Q Open 165Q status 153Q Environment 143Q InstOf 114Q owners 64Q NEW 61Q OUTPUT 36Q New) (100Q "Creating new KB " 25Q " already exists. TYPE OK to make new version of KB") KBMeta.Old D1 (P 10Q classForMethod P 7 obj% P 1 env P 0 kb I 2 envName I 1 kbName I 0 self) U pA bd A XB=g [g KkJOg OBlLOY^g NHlMH(111Q FetchMethodOrHelp 64Q FetchMethodOrHelp 43Q FetchMethodOrHelp 34Q GetObjectRec 22Q KBReadBoot 14Q GetObjectRec 6 KBNameForm) (106Q ConnectOutput 61Q SetName 40Q New 31Q Environment) NIL KBMeta.ReadOldBootLayerA0300 D1 (NAME ERRORSET L (2 ERRORSET.W 1 ERRORSET.V 0 ERRORSET.U) F 0 file F 1 kbName) g PQ h(13Q ReadLayerIndex 5 SETTOPVAL) (2 CurrentNameTable) NIL KBMeta.ReadOldBootLayer D1 (P 5 MACROY P 4 MACROX P 3 layer P 2 position P 1 file P 0 numLeft I 2 numBack I 1 kbName I 0 self F 6 RESETVARSLST) Bdddo A g "I Ao I Ij I i Id Id l I ZgIJId l Id HkXm gd Vc og gL Lc MA (266Q GetObjectRec 260Q ERROR! 245Q SETTOPVAL 233Q KBMeta.ReadOldBootLayerA0300 213Q GETTOPVAL 167Q SETFILEPTR 164Q READ 156Q SETFILEPTR 150Q GETFILEPTR 131Q READ 124Q SETFILEPTR 116Q GETFILEPTR 110Q SETFILEPTR 105Q GETEOFPTR 77Q PRINT 73Q READ 66Q SETFILEPTR 60Q INPUT 53Q ERROR 35Q KBFullName 27Q KBFileName 23Q ERROR) (237Q CurrentNameTable 230Q INTERNAL 207Q CurrentNameTable 135Q BootLayer 32Q INPUT) (225Q (DUMMY.FOR.ERRORSET) 50Q "not found." 20Q "is not a number. Use a number to tell how many Bootlayers to skip. ") KBMeta.SummarizeA0008 D1 (NAME ERRORSET L (2 ERRORSET.W 1 ERRORSET.V 0 ERRORSET.U) F 2 toKB F 3 fileEntities F 4 namedEntities) (gi RHg HSTRg lIh(35Q GetValue 22Q FetchMethodOrHelp 6 SETTOPVAL) (32Q name 17Q WriteEntityFile 2 WritingSummaryFlg) () KBMeta.Summarize D1 (P 52Q c P 51Q MACROY P 50Q MACROX P 47Q uid P 46Q entity P 45Q name P 43Q classForMethod P 42Q obj% P 6 names P 5 env P 4 fromKBState P 3 toKBContents P 2 toKB P 1 namedEntities P 0 fileEntities I 4 namedObjectsOnly I 3 assocKBNames I 2 toKBName I 1 fromKBName I 0 self F 53Q RESETVARSLST) +hhhh !BBAo bCg _g _OkO#ODg _ODAlOOD\g _g _OlO]g _g _OBhilOZdgLh M_g _OJlOM_"g _ O"kO M_&g _$O&hCilO$^d1'OHK )gd WVcV_Pog _RgOP OPcVORAClChb_J _N _LHHOL IOJON OH_HL_*g _(O*kO(_.g _,O.kO,LJg [A g >d*OT_2g _0O2glO0KOT_6g _4O6kO4h J_:g _8O:kO8M_>g _kO<M_Bg _@OBkO@J(1020Q FetchMethodOrHelp 774Q FetchMethodOrHelp 750Q FetchMethodOrHelp 731Q \NCONC2 712Q FetchMethodOrHelp 657Q FetchMethodOrHelp 636Q GetValue 630Q GetObjectRec 623Q DREMOVE 620Q GetValue 575Q FetchMethodOrHelp 553Q FetchMethodOrHelp 540Q ERROR! 525Q TCONC 513Q TCONC 477Q GetEntityFromUID 472Q UID 467Q GetObjectRec 423Q SETTOPVAL 406Q KBMeta.SummarizeA0008 363Q GETTOPVAL 320Q FetchMethodOrHelp 274Q FetchMethodOrHelp 246Q FetchMethodOrHelp 235Q PutValue 204Q FetchMethodOrHelp 174Q GetObjectRec 157Q GENSYM 147Q FetchMethodOrHelp 137Q GetObjectRec 110Q FetchMethodOrHelp 63Q FetchMethodOrHelp 53Q GetObjectRec 33Q HELPCHECK) (1015Q Destroy 771Q Close 745Q WriteBoot 707Q CopyShallow 667Q Layer 654Q InstOf 633Q contents 615Q contents 572Q Close 550Q MyKB 414Q WritingSummaryFlg 403Q INTERNAL 357Q WritingSummaryFlg 315Q MapObjectNames 271Q Open 243Q ConnectOutput 227Q contents 201Q New 171Q KB 144Q New 134Q Environment 105Q SetName 60Q New 50Q KBState) ( 400Q (DUMMY.FOR.ERRORSET) 30Q "toKBName must be given and be different than fromKBName. To continue, RETURN the new toKBName") KBState.AddEntities D1 (P 0 item I 1 entityList I 0 self) 2A@i @g d!HZg JAlIh(41Q FetchMethodOrHelp 22Q GetValue 13Q TCONC 10Q GetEntityFromUID 5 UID) (36Q AddEntities 17Q contents) NIL KBState.AddToContents D1 (I 1 addition I 0 self) o@o (13Q HELPCHECK) NIL (10Q " Type OK to ignore and go on." 3 "no additions allowed to KBState contents") KBState.Close D1 (P 2 c I 1 env I 0 self) J@Hg HkIHg HkI@g d!J\g LAlKh(71Q FetchMethodOrHelp 51Q GetValue 33Q FetchMethodOrHelp 12Q FetchMethodOrHelp) (66Q Close 46Q contents 30Q Close 7 MyKB) NIL KBState.Connect D1 (P 2 item I 0 self) T@g g%@Hg HkIHg HkI@g d!J\g LkKh(105Q FetchMethodOrHelp 66Q GetValue 50Q FetchMethodOrHelp 27Q FetchMethodOrHelp 6 GetValue) (102Q Connect 63Q contents 45Q Connect 24Q MyKB 11Q CURRENT 3 contents) NIL KBState.CurrentState D1 (P 21Q item P 15Q classForMethod P 14Q obj% P 2 kbs P 1 c P 0 name I 0 self) @g @g  Ig@\g LkK]g MkNg _g _OkO Og _OHlOOZdg0@g 1dO"_g _OkO_O Oh_ O&_O  J(257Q PutValue 206Q FetchMethodOrHelp 165Q GetValue 126Q FetchMethodOrHelp 101Q FetchMethodOrHelp 71Q GetObjectRec 54Q FetchMethodOrHelp 37Q FetchMethodOrHelp 15Q GetValue 6 GetValue) (203Q CopyShallow 162Q contents 153Q contents 123Q SetName 76Q New 66Q KBState 51Q CurrentState 34Q MyKB 24Q CURRENT 12Q contents 3 name) NIL KBState.DescribeLayers D1 (P 11Q item P 2 newKBState P 1 startDate P 0 describedLayers I 2 assocKB I 1 dateOrDays I 0 self) hhAddkbkl AoYo @g Od O\g LglK3Og I$BBOg HO^g NkM HX2g _g _OkOZg@g JgH J(300Q PutValue 267Q PutValue 264Q GetValue 237Q FetchMethodOrHelp 227Q GetObjectRec 206Q TCONC 175Q FetchMethodOrHelp 160Q GetValue 141Q IDATE 136Q GetValue 112Q FetchMethodOrHelp 72Q GetValue 62Q ERROR 42Q IDATE 37Q SUBSTRING 31Q DATE) (274Q contents 261Q name 255Q name 234Q New 224Q KBState 172Q CopyShallow 155Q assocKB 133Q created 117Q Layer 107Q InstOf 67Q contents) (57Q "not in correct date format" 47Q 250600Q) KBState.MyKB D1 (I 0 self) (@g @g @g o (45Q ERROR 36Q GetValue 25Q KBReadBoot 22Q GetValue 11Q GetObjectRec 6 GetValue) (33Q name 17Q name 3 name) (42Q "is not the name of a known knowledgeBase") KBState.PrintContentsA1561 D1 (NAME ERRORSET L (2 ERRORSET.W 1 ERRORSET.V 0 ERRORSET.U) P 0 item F 3 file F 4 self F 5 RESETVARSLST F 6 RESETY) ghhUc oS `S Tg S `S oS Tg S S oS Tg lTg S /S Tg d!HZg JkI`S c i(235Q CHANGEFONT 213Q FetchMethodOrHelp 174Q GetValue 164Q TERPRI 156Q PRINT 152Q GetValue 136Q GetValue 126Q PRIN1 115Q TERPRI 110Q PRIN1 104Q GetValue 74Q PRIN1 63Q CHANGEFONT 53Q PRIN1 47Q GetValue 37Q CHANGEFONT 27Q PRIN1 5 DSPFONT) (231Q DEFAULTFONT 210Q PrintContents 171Q contents 147Q contents 133Q contents 101Q created 57Q DEFAULTFONT 44Q name 33Q LAMBDAFONT 2 DSPFONT) (122Q "Contents:" 70Q " created" 23Q "KBState ") KBState.PrintContents D1 (P 2 RESETZ P 1 RESETY P 0 LISPXHIST I 1 file I 0 self F 3 LISPXHIST F 4 RESETVARSLST) "S!Tog hgZ JI(35Q ERROR! 30Q RESETRESTORE 16Q KBState.PrintContentsA1561) (24Q ERROR 13Q INTERNAL) (10Q (DUMMY.FOR.ERRORSET)) KBState.ReadBoot D1 (I 0 self) @g (11Q KBReadBoot 6 GetValue) (3 name) NIL KBState.SetContents D1 (I 1 lst I 0 self) o@ (7 ERROR) NIL (3 "no changes allowed to KBState contents") Layer.AddEntities D1 (I 1 entityList I 0 self) A@i (13Q TCONC 10Q GetEntityFromUID 5 UID) NIL NIL Layer.Close D1 (L (0 self)) hNIL NIL NIL Layer.Connect D1 (P 0 file I 0 self) $@g g X@g H@ h(40Q ReadLayerIndex 32Q SETFILEPTR 27Q GetValue 17Q OpenKBFile 11Q GetValue) (24Q position 14Q INPUT 6 kbName) NIL Layer.MapObjectNames D1 (P 5 nameCount P 4 entityCount P 3 indexPosition P 2 name P 1 file P 0 nameList I 2 noUIDs I 1 mapFn I 0 self) hh@g bI@g I [I \I ]IK L^j$I I BAJkAHJ NkٰM_j#I I AJkAHJ OkٰH(166Q TCONC 150Q READ 144Q MKATOM 141Q READ 120Q TCONC 100Q READ 73Q MKATOM 70Q READ 56Q SETFILEPTR 50Q READ 43Q READ 36Q READ 32Q SETFILEPTR 27Q GetValue 14Q OpenKBFile 11Q GetValue) (24Q position 6 kbName) NIL Layer.PrintContents D1 (I 1 file I 0 self) ?oA @g A oA @g A oA @g A A (74Q TERPRI 70Q PRIN1 64Q GetValue 55Q PRIN1 45Q PRIN1 41Q GetValue 32Q PRIN1 22Q PRIN1 16Q GetValue 7 PRIN1) (61Q creator 36Q created 13Q kbName) (51Q " by " 26Q " created " 3 "Layer on ") Object.AssocKB D1 (P 0 uid I 1 newKBName I 0 self) -A@Hd @i @iH AA(43Q GetEntityFromUID 30Q UID 22Q EntityKB 17Q GetEntityFromUID) (46Q Entity) NIL Object.AssocKB? D1 (P 0 uid I 0 self) @Hd (17Q EntityKB 14Q GetEntityFromUID) NIL NIL CloseKBFile D1 (P 0 fn I 1 errorIfNotOpen I 0 name) -@` HA@o  H` H(44Q DREMOVE 34Q CLOSEF 27Q ERROR 6 FASSOC) (47Q OpenKBFiles 41Q OpenKBFiles 3 OpenKBFiles) (24Q "not an open KB. Tried to close") CreateGlobalEnvironment D1 (F 2 GlobalEnvironment F 3 CurrentEnvironment F 4 ObjNameTable) Vhcg Hg HkIcdgT Rgg Rghg Rghg Rghgg R(122Q MakeActiveValue 103Q MakeActiveValue 70Q MakeActiveValue 55Q PutValue 43Q PutValueOnly 22Q FetchMethodOrHelp 10Q GetObjectRec) (116Q Open 113Q NoUpdatePermitted 107Q status 100Q NoUpdatePermitted 74Q assocKB 65Q NoUpdatePermitted 61Q outputKB 52Q GlobalEnvironment 47Q name 37Q nameTable 17Q New 5 Environment) NIL CutBackToBootLayer D1 (P 4 testPos P 3 outfile P 2 infile P 1 fileName P 0 endPos I 0 kbName) Lj@ 2Ig oJhddi \*HjoJ Ig JKjH J K K(105Q CLOSEF 100Q CLOSEF 73Q COPYBYTES 63Q OPENFILE 53Q HELPCHECK 34Q FILEPOS 16Q OPENFILE 4 KBFileName) (60Q OUTPUT 13Q INPUT) (47Q "No boot layer in " 23Q "BootLayer") DumpClassFacts D1 (P 4 nm P 0 filePos I 1 fileHandle I 0 class) A 1gA @A @A @A @ A @ 4d@L@jJKIK[h hIkذk A @ A @ A @ A @ A @ A H(260Q PRINT 254Q \ListFromBlock 243Q PRINT 237Q \ListFromBlock 226Q PRINT 222Q DumpPruneDescr1 211Q PRINT 205Q DumpPruneDescr 174Q PRINT 155Q PRINT 150Q FNTH 65Q PRINT 53Q PRINT 41Q PRINT 27Q PRINT 15Q PRINT 3 GETFILEPTR) (247Q class 232Q class 215Q class 200Q class 166Q class 71Q class 57Q class 45Q class 33Q class 21Q class 11Q C) NIL DumpPruneDescr D1 (P 5 dontSaveList P 4 descr I 0 descrList) @aHI@g g]dghTgLLLgMh@L=gMgL0 L#d^Mh NNh_O%O__OJ KhZHXK& _O(213Q LAST 23Q LISTGET) (103Q ? 75Q Value 61Q Value 46Q ? 35Q Any 30Q ? 20Q DontSave) NIL DumpPruneDescr1 D1 (P 5 dontSaveList P 4 descr I 0 descrList) @aHI@g g]dghGgL?LgMh3L00 L$d^Mh NNh_O$O__OJ KhZHXK& _O(175Q LAST 22Q LISTGET) (60Q Value 45Q ? 34Q Any 27Q ? 17Q DontSave) NIL EntityKB D1 (P 0 stored I 0 entity) "@HdlHHXHg (37Q GetValue) (34Q kbName 3 Entity) NIL EntityModified D1 (L (0 entity)) @HdddhHNIL (3 Entity) NIL Environment.WriteBoot D1 (I 0 self) @g Hg HkI(20Q FetchMethodOrHelp 6 GetValue) (15Q WriteBoot 3 outputKB) NIL FillInClass D1 (I 1 classFileForm I 0 class) @A@A @A@A@A@A @A @@AHI I@A@A (216Q InstallSupers 137Q \BlockFromList 113Q \BlockFromList) (174Q class 151Q class 145Q class 121Q class 76Q class 57Q class 42Q class 26Q class 13Q class 3 class) NIL FillInClass1 D1 (P 7 realDescr P 6 fakeDescr P 2 supers P 1 fakeDescrs P 0 localNames I 1 fileHandle I 0 classRec) 0@A @A A Z@A X @H@0HghLKh]K&MY@J I!M=@A  @A @A @A @A h^A _NOM](237Q READ 225Q \BlockFromList 222Q READ 210Q \BlockFromList 205Q READ 173Q READ 161Q READ 147Q READ 126Q InstallSupers 43Q READ 32Q READ 24Q READ 12Q READ) (216Q class 201Q class 167Q class 155Q class 143Q class 72Q ? 61Q class 52Q class 37Q class 20Q class 6 class) NIL FindChangedKB D1 (P 1 objRec P 0 place I 1 name I 0 entity F 2 changedKBs)  @d R@ h(22Q TCONC 17Q EntityKB 10Q EntityModified) NIL NIL KBFileName D1 (I 0 name) @o (7 PACK*) NIL (4 ".KB") KBFullName D1 (I 1 openOnly I 0 name) @` Ah @ (25Q FINDFILE 22Q KBFileName 6 FASSOC) (3 OpenKBFiles) NIL KBNameForm D1 (P 0 uName I 0 kbName) '@ Xdd@oHo@o H(43Q WRITE 11Q U-CASE 6 NAMEFIELD) NIL (37Q ")" 32Q " for " 25Q "(Using ") KBReadBootA0001 D1 (NAME ERRORSET L (2 ERRORSET.W 1 ERRORSET.V 0 ERRORSET.U) F 0 RESETVARSLST F 1 file F 2 kbName F 3 RESETY) 2gd g Pcgd g PcQR ci(54Q ReadLayerIndex 41Q SETTOPVAL 32Q GETTOPVAL 15Q SETTOPVAL 6 GETTOPVAL) (36Q CurrentUIDTable 26Q CurrentUIDTable 12Q CurrentNameTable 2 CurrentNameTable) () KBReadBoot D1 (P 6 RESETZ P 5 RESETY P 4 LISPXHIST P 3 KB P 2 layer P 1 position P 0 file I 0 kbName F 7 LISPXHIST F 10Q RESETVARSLST) s@g 1H @o Hj H i Hd l H YH gHo HI W!Wog hg^ N@ (160Q GetObjectRec 152Q ERROR! 144Q RESETRESTORE 132Q KBReadBootA0001 111Q SETFILEPTR 103Q LoopsHelp 66Q READ 61Q READ 55Q SETFILEPTR 47Q GETEOFPTR 42Q PRINT 36Q READ 32Q SETFILEPTR 24Q ERROR 6 OpenKBFile) (140Q ERROR 127Q INTERNAL 71Q BootLayer 3 INPUT) ( 124Q (DUMMY.FOR.ERRORSET) 100Q "is not a bootable Knowledge Base" 21Q "not found.") NewNameTable D1 (P 0 oldNameTable I 0 self) )@g H@gl h  H (46Q CLRHASH 40Q HARRAYP 33Q PutValueOnly 26Q HARRAY 6 GetValueOnly) (21Q nameTable 3 nameTable) NIL OpenKBFile D1 (P 0 fn I 1 access I 0 name) FAgb@ H @o ) HA H HA HA @H`H(67Q OPENFILE 61Q OPENFILE 53Q CLOSEF 45Q OPENP 36Q OPENP 31Q ERROR 13Q KBFullName) (102Q OpenKBFiles 76Q OpenKBFiles 4 INPUT) (26Q " is not a defined KB") PositionEntityFile D1 (P 2 file P 1 layer P 0 position I 1 filePos I 0 entityRec) !A@@@ ZH J(35Q SETFILEPTR 30Q OpenKBFile 25Q EntityKB) (14Q Entity 6 Entity) NIL ReadFacts D1 (P 4 fileHandle P 3 temp P 2 objectRec P 1 char P 0 uid I 1 position I 0 entityRec F 6 LeafInstanceFlg) @QAj@ @A \d YgIdg+@`dHZIgJL ]JL Vg6`dHVL L JKh@ +JL [Ki IgL LkMZoI @JJ(246Q LoopsHelp 226Q READ 212Q FillIVs 202Q READ 173Q FillIVs 156Q READ 151Q READC 120Q FillInClass1 111Q FillInClass 106Q READ 33Q READC 26Q PositionEntityFile 20Q ReadIncrementalFacts) (253Q Entity 220Q e 166Q Entity 133Q instanceTYPE# 125Q i 77Q c 61Q classTYPE# 56Q Entity 46Q C 37Q c 3 Entity) ( 242Q "Strange Facts Type on File") ReadLayerIndex D1 (P 15Q pr P 11Q I P 5 locRec P 4 entity P 3 uid P 2 nameCount P 1 entityCount P 0 position I 1 layer I 0 file) !@ @ @ S@H Ik OO@ @ K \HdH!M`M_g OkNK _Md jHo ILHLA8LAL@H (jHo `dKdHdAKL Ok_VJjSJk2 OO+@ @ _OOh__Ok_O&_Od OO h(430Q PutObjectName 425Q GetObjFromUID 341Q READ 335Q READ 275Q PutObjectUID 242Q LoopsHelp 225Q ReadOverFacts 164Q LoopsHelp 136Q PutObjectUID 122Q FetchMethodOrHelp 57Q GetEntityFromUID 52Q READ 45Q READ 23Q SETFILEPTR 13Q READ 7 READ 3 READ) (247Q EntityTYPE# 213Q Entity 202Q Entity 172Q Entity 117Q Destroy 106Q instanceTYPE# 73Q Entity) ( 237Q "Incremental Facts Storage NotImplemented Yet" 161Q "Incremental Facts Storage NotImplemented Yet") ReadLeafObj D1 (P 3 fileHandle P 2 temp P 1 char P 0 entityRec I 0 objectRec) 9@i 1H@ [d YgIo @K ZJi @(65Q FillIVs 55Q READ 47Q ERROR 31Q READC 24Q PositionEntityFile 7 GetEntityFromUID 4 UID) (35Q i 17Q instance) (44Q "Not an instance leaf") ReadOverFacts D1 (P 3 temp P 2 char P 1 filePos P 0 objectRec I 2 position I 1 file I 0 entity) @A "AB A ZgJdg3@X`@`XJgHA @HA 9g+@Xd`@`XHA [Ki oJ H@AI H(232Q SETFILEPTR 213Q LoopsHelp 202Q FillIVs 172Q READ 122Q FillInClass1 113Q FillInClass 110Q READ 25Q READC 21Q SETFILEPTR 11Q GETFILEPTR) (221Q Entity 160Q instanceTYPE# 155Q Entity 146Q instanceTYPE# 136Q Entity 127Q i 101Q c 70Q classTYPE# 65Q Entity 57Q classTYPE# 50Q Entity 40Q c 31Q C 3 Entity) ( 207Q "Strange Facts Type on File") SelectChangedEntity D1 (P 2 name P 1 lr P 0 place I 1 name I 0 entity F 3 kbName F 4 changedEntities F 5 namedEntities) g@@IH*Hlh@ DSiHlSHSHg +T@ Id! dJUJI  h(135Q TCONC 131Q UID 110Q GetObjectNames 100Q TCONC 70Q GetValue 40Q EntityModified) (65Q assocKB 11Q Entity 3 Entity) () WriteEntityFileA1582 D1 (NAME ERRORSET L (2 ERRORSET.W 1 ERRORSET.V 0 ERRORSET.U) P 0 entity F 1 FileEntities F 2 file) gi QdHR hh(24Q WriteFacts 6 SETTOPVAL) (2 WritingLayerFlg) NIL WriteEntityFile D1 (P 6 namedEntity P 5 entity P 4 MACROY P 3 MACROX P 2 indexPosition P 1 initialFilePosition P 0 file I 3 bootFileFlg I 2 namedEntities I 1 FileEntities I 0 openFile F 7 RESETVARSLST) @g @o !Hd YlH  gd Wcog gK KcLH ZAdMH BdNH lH IH CgH HI JH A H B H H(256Q PRINT 252Q LENGTH 245Q PRINT 241Q LENGTH 234Q PRINT 227Q SETFILEPTR 221Q PRINT 210Q PRINT 203Q SPACES 170Q WriteNameEntry 146Q WriteIndexEntry 130Q GETFILEPTR 122Q ERROR! 107Q SETTOPVAL 75Q WriteEntityFileA1582 54Q GETTOPVAL 42Q SPACES 33Q SETFILEPTR 30Q GETEOFPTR 20Q ERROR 6 OPENP) (215Q BootLayer 101Q WritingLayerFlg 72Q INTERNAL 50Q WritingLayerFlg 3 OUTPUT) (67Q (DUMMY.FOR.ERRORSET) 15Q "not open for output") WriteFacts D1 (P 0 lr I 1 file I 0 entity) :@1Hd-dd@H @HZg JAlI[K(53Q FetchMethodOrHelp 34Q ReadFacts) (50Q DumpFacts 41Q Entity 3 Entity) NIL WriteIndexEntry D1 (P 0 rec I 1 file I 0 entity) 8@@A kA H@hhA hA Hh(57Q PRINT 47Q PRINT 27Q SPACES 22Q PRIN2) (36Q Entity 14Q Entity 3 Entity) () WriteNameEntry D1 (I 1 file I 0 namedEntity) @A kA @A (20Q PRINT 12Q SPACES 5 PRIN1) NIL NIL (PRETTYCOMPRINT LOOPSDATABASECOMS) (RPAQQ LOOPSDATABASECOMS ((* Copyright (c) 1982 by Xerox Corporation) (* Classes which manipulate the database) (CLASSES * DATABASECLASSES) (METHODS Environment.AssocKB Environment.Cancel Environment.ChangedKBs Environment.Cleanup Environment.ClearObjectMemory Environment.Close Environment.ConnectOutput Environment.Disconnect Environment.IsCurrent Environment.MakeCurrent Environment.MakeNotCurrent Environment.MapObjectNames Environment.Open GlobalInstanceMeta.New KB.AddToContents KB.Close KB.ConnectForOutput KB.CopyFileLayer KB.CopyFileLayers KB.Disconnect KB.FileName KB.FreezeKB KB.PrintContents KB.SetContents KB.ThawKB KB.WriteBoot KB.WriteEntityFile KB.WriteFileLayer KBMeta.Close KBMeta.New KBMeta.Old KBMeta.ReadBoot KBMeta.ReadOldBootLayer KBMeta.Summarize KBState.AddEntities KBState.AddToContents KBState.Close KBState.Connect KBState.CurrentState KBState.DescribeLayers KBState.MyKB KBState.PrintContents KBState.ReadBoot KBState.SetContents Layer.AddEntities Layer.Close Layer.Connect Layer.MapObjectNames Layer.PrintContents Object.DumpFacts Class.DumpFacts Object.AssocKB Object.AssocKB?) (* * Functions for the database classes) (FNS * DATABASEFNS) (* Set the value of the variable GlobalEnvironment) (* Copyright (c) 1982 by Xerox Corporation))) (RPAQQ DATABASECLASSES (Environment GlobalInstanceMeta KB KBMeta KBState Layer)) (DEFCLASSES Environment GlobalInstanceMeta KB KBMeta KBState Layer) (DEFCLASS Environment (MetaClass GlobalInstanceMeta Edited: (* dgb: "26-NOV-82 17:09") doc (* * Provides a name space for working in alternative worlds)) (Supers GlobalNamedObject) ( InstanceVariables (status NotOpen doc (* One of NotOpen, Open. Open when indexes of KBs have been read in, NotOpen after ClearobjectMemory)) (nameTable #((CONS (HARRAY 128)) FirstFetch NIL) DontSave (Value) doc (* nameTable for looking up names)) (uidTable #((CONS (HARRAY 256)) FirstFetch NIL) DontSave (Value) doc (* table for going from uids to entities.)) (outputKB NIL DontSave (Value) doc (* a KB to which changes will be filed, and which specifies contents)) (assocKB NIL doc (* Name of the KB associated with new objects created)))) (DEFCLASS GlobalInstanceMeta (MetaClass MetaClass Edited: (* mjs: "30-JUN-82 18:18") doc (* * allows creation of instances which appear only in the GlobalNameTable. used by KB, KBState, Layer, Environment)) (Supers Class)) (DEFCLASS KB (MetaClass KBMeta Edited: (* dgb: " 8-DEC-82 16:57") doc (* Represents a KB file in core) ) (Supers GlobalNamedObject KBState) (InstanceVariables (connectedEnvs NIL DontSave (Value) doc (* List of Envs which have read in contents of this KB)) (contents NIL doc (* KBs start out e_with an empty list of contents)) (currentWriter NIL DontSave (Value) doc (* Environment which is currently writing on this KB)) (fileName #((FINDFILE (KBFileName (@ name))) FirstFetch NIL) DontSave (Value) doc (* Full name of file where this KB is stored. Computed the first time it is needed. Never stored.)) (owners NIL doc (* List of owners of this KB)) (status Disconnected DontSave (Value) doc (* One of Disconnected Connected or BootNeeded) ))) (DEFCLASS KBMeta (MetaClass MetaClass Edited: (* dgb: "26-NOV-82 11:56")) (Supers GlobalInstanceMeta)) (DEFCLASS KBState (MetaClass GlobalInstanceMeta Edited: (* dgb: "27-MAY-83 07:31")) (Supers DatedObject NamedObject) (InstanceVariables (name NIL doc (* name of file associated with this KBState. NIL as value overrides active Value in NamedObject)) (contents CURRENT doc (* Either CURRENT, meaning the current state of the KB with name or a list of layers and KBStates specifying layerset))) ) (DEFCLASS Layer (MetaClass GlobalInstanceMeta Edited: (* dgb: " 6-DEC-82 12:15")) (Supers DatedObject) (InstanceVariables (kbName NIL doc (* name of kb where this layer was stored e.g. BRIDGE)) (position NIL doc (* index on file where FileLayer is found)) (assocKB NIL doc (* name of KB with which this Layer is associated conceptually)))) (METH Environment AssocKB (akb) (* Make akb be the assocKB of this KB)) (METH Environment Cancel NIL (* Erase an environment without cleaning up. Leaves environment not open, empty, not current, but connected to the same KB. To restart send the environment the Open message.)) (METH Environment ChangedKBs NIL (* Finds the names of all KBs that have any modified entities associated with them)) (METH Environment Cleanup (KBNames noBootLayerFlg) (* Write FileLayers for KBs named in KBNames. If KBNames=NIL then write a layer for each changed KB. If KBNames=T then write one layer for all changes. If KBName is a single atom, then the update is written for that single assocKB. Finish by writing new boot layer for outputKB unless noBootLayer is T)) (METH Environment ClearObjectMemory NIL (* Write out boot layer if needed and clear nameTable.)) (METH Environment Close (assocKBs) (* Cleanup an environment so that all files are closed, and environment is empty, as if it were just created)) (METH Environment ConnectOutput (KB) (* Make KB be the file onto which changes in this Environment will be written)) (METH Environment Disconnect (KB) (* Make KB be the file onto which changes in this Environment will be written)) (METH Environment IsCurrent NIL (* Test if current)) (METH Environment MakeCurrent NIL (* Set values of CurrentNameTable and CurrentEnvironment from self and make DefaultKBName be my assocKB)) (METH Environment MakeNotCurrent (bitchIfNotCurrent) (* Makes no Environment Current if this is current, elses causes Error if not Current and bitchIfNotCurrent=T)) (METH Environment MapObjectNames (mapFn assocKBs noUIDs) (* APPLY mapFn to the name of each object stored in the environment. If assocKBs given, select only those which are in the list. If noUIDs=T then apply only to names which are not UIDs. If mapFn=NIL then just list all names and UIDs; if mapFn=T then just the names)) (METH Environment Open NIL (* Read in the index of all the layers referred to by contents of outputKB) ) (METH GlobalInstanceMeta New (kbName envName newVersionFlg) (* * Create a new KnowledgeBase file, and an environment if name is given, and make environment current)) (METH KB AddToContents (newAddition) (* * Adds a new item to contents of KB)) (METH KB Close NIL (* Close the file associated with a KB)) (METH KB ConnectForOutput (nameTable) (* Read in object file indices from all, possibly implicit, layers in order. This is being opened for output.)) (METH KB CopyFileLayer (layer) (* Copies the FileLayer referred to by layer onto self, and adds a new Layer describing copied fileLayer onto contents of self)) (METH KB CopyFileLayers (layerDescription) (* Copy all the layers in layerDescription which should be a KBState into self)) (METH KB Disconnect NIL (* Disconnect this KB and close its file if open)) (METH KB FileName NIL (*)) (METH KB FreezeKB (name) (* Find a KBState with @name=name and contents=CURRENT. Replace it by a new KBState with contents = currentState of myKB. Return new KBState or NIL if failure)) (METH KB PrintContents (file) (* Fn to Printout a formatted description of the contents of a knowledge base.)) (METH KB SetContents (lst) (* Make KB have new contents. Check types of elements)) (METH KB ThawKB (name) (* Find a KBState with (GetValue self (QUOTE name=name)) and contents not Equal CURRENT. Replace it by a new KBState with contents = CURRENT. Return new KBState or NIL if failure)) (METH KB WriteBoot NIL (* Write out boot file containing KB and all layers and KBStates it contains implicitly or explicitly)) (METH KB WriteEntityFile (changedEntities namedEntities assockbName) (* * Writes the entities (objects ) out to a layer in a given kb.)) (METH KB WriteFileLayer (kbName nameTable) (* * Writes the facts on the file, appending to file. Format of layer is: - indexFilePosition (up to 7 characters) - entityCount (up to 7 characters) - nameCount (up to 7 characters) - entity records - indexRecords (UID followed by file position,) - nameRecords (name followed by UID) - initialFilePosition)) (METH KBMeta Close NIL (* Close all the currently open KBs, and Cancel any attached writers or readers. Set OpenKBFiles to NIL)) (METH KBMeta New (kbName envName newVersionFlg) (* * Create a new KnowledgeBase file, and an environment if name is given, and make environment current)) (METH KBMeta Old (kbName envName) (* Get kb for this kbName. (Causes boot layer to be read unless kb is already in the global table.) If envName is given, creates an Environment of that name and connects the environment to the kb.)) (METH KBMeta ReadBoot NIL (* Read in index of existing KB given kbName) (method KBReadBoot)) (METH KBMeta ReadOldBootLayer (kbName numBack) (* Read in index of already existing KB)) (METH KBMeta Summarize (fromKBName toKBName assocKBNames namedObjectsOnly) (* * Incorporate all objects of fromKB with assocKB in assocKBNames (or all if assocKBNames=NIL) into new KB toKBName. If namedObjectsOnly=T then only copies over all those entities referred to by a name or by a named object directly or indirectly. This latter feature provides a mechanism for garbage collection.)) (METH KBState AddEntities (entityList) (* Add all items on contents and self to entityList. Called by functions which write out the boot layer to make sure that all layers are added to the list of items to be dumped)) (METH KBState AddToContents (newAddition) (* * Adds a new item to contents of KB)) (METH KBState Close (env) (* close files if necessary)) (METH KBState Connect (nameTable) (* Read in object file indices from all, possibly implicit, layers in order. These are being opened for input only.)) (METH KBState CurrentState NIL (* Create a KB state which reflects the current state of this KB)) (METH KBState DescribeLayers (dateOrDays assocKB) (* Return a KBState whose contents are just those layers which occur after dateOrDays and have kb assocKB, or NIL if none)) (METH KBState MyKB NIL (* Return the KB object corresponding to this KBState)) (METH KBState PrintContents (file) (* Fn to Printout a formatted description of the contents of a knowledge base.)) (METH KBState ReadBoot NIL (* Read the boot file for this KB)) (METH KBState SetContents (lst) (* Make KB have new contents. Check types of elements)) (METH Layer AddEntities (entityList) (* Add self to entity list for dumping on boot layer)) (METH Layer Close NIL (* Do nothing. Dummy so one can recurse through contents of a KB)) (METH Layer Connect (nameTable) (* Open layer file and read in index)) (METH Layer MapObjectNames (mapFn noUIDs) (* apply mapFn to objectnames in layer, or make a list of them if mapFn=NIL)) (METH Layer PrintContents (file) (* Print contents of layer)) (METH Object DumpFacts (fileHandle) (* dgb: " 6-DEC-82 13:41") (method DumpInstanceFacts)) (METH Class DumpFacts (fileHandle) (* * Invoked when dumping a class onto a kb. Called by (_ class DumpFacts)) (method DumpClassFacts)) (METH Object AssocKB (newKBName) (* Change assocKB of this object to newKBName)) (METH Object AssocKB? NIL NIL) (RPAQQ DATABASEFNS (CloseKBFile CreateGlobalEnvironment CutBackToBootLayer DumpClassFacts DumpPruneDescr DumpPruneDescr1 EntityKB EntityModified Environment.WriteBoot FillInClass FillInClass1 FindChangedKB KBFileName KBFullName KBNameForm KBReadBoot NewNameTable OpenKBFile PositionEntityFile ReadFacts ReadLayerIndex ReadLeafObj ReadOverFacts SelectChangedEntity WriteEntityFile WriteFacts WriteIndexEntry WriteNameEntry)) (PUTPROPS LOOPSDATABASE COPYRIGHT ("Xerox Corporation" 1983 1984)) NIL