(ASSEMBLE.CLAUSE ( incore 1 interp ) 2 (execute call 1 interp) ) (ASSEMBLE.CLAUSE ( call←direct 2 interp ) 32 (allocate) (get.Ai.variable.Yn 1 2) (get.Ai.variable.Yn 2 5) (put.Ai.variable.Yn 3 4) (put.Ai.variable.Yn 2 3) (put.Ai.value.Yn 1 2) (functor) (put.Ai.variable.Yn 4 1) (put.Ai.value.Yn 3 5) (put.Ai.unsafe.Yn 2 4) (put.Ai.unsafe.Yn 1 3) (call 5 local←check←predicate 4 si) (put.Ai.constant 3 0) (put.Ai.value.Yn 2 2) (put.Ai.unsafe.Yn 1 1) (depart apply 3 si) ) (ASSEMBLE.CLAUSE ( call 2 interp ) 2 (execute call←direct 2 interp) ) (ASSEMBLE.CLAUSE ( call 1 interp ) 31 (allocate) (get.Ai.variable.Yn 1 2) (put.Ai.value.Yn 1 2) (call 5 check←goal←not←var 1 interp) (put.Ai.variable.Yn 2 1) (put.Ai.value.Yn 1 2) (call 4 transform←body 2 interp) (load.choice.point) (store.variable.Xn 5) (put.Ai.void 4) (put.Ai.structure 3 info 1) (unify.constant 0) (put.Ai.constant 2 0) (put.Ai.unsafe.Yn 1 1) (depart interpret 5 interp) ) (ASSEMBLE.CLAUSE ( check←goal←not←var 1 interp ) 11 (allocate) (is.a 1) (body.cut) (put.Ai.void 2) (put.Ai.constant 1 342) (call 3 nerror 2 si) (fail) ) (ASSEMBLE.CLAUSE ( check←goal←not←var 1 interp ) 1 (proceed) ) (ASSEMBLE.CLAUSE ( %↑ 2 interp ) 4 (put.Ai.value.Xn 1 2) (execute call 1 interp) ) (ASSEMBLE.CLAUSE ( %$interpreter←hook 2 interp ) 96 (allocate) (get.Ai.variable.Yn 1 1) (get.Ai.variable.Yn 2 2) (put.Ai.symbol 4 user) (put.Ai.void 3) (put.Ai.void 2) (put.Ai.value.Yn 1 2) (call 6 procedure 4 si) (put.Ai.variable.Yn 5 3) (put.Ai.void 4) (put.Ai.void 3) (put.Ai.void 2) (put.Ai.value.Yn 1 2) (call 6 predicate←parts 5 si) (load.value.Yn 3) (load.pos.word 3) (boolean.and) (store.variable.Xn 1) (load.value.Xn 1) (load.pos.word 2) (less.than.else 52) (put.Ai.value.Yn 5 2) (put.Ai.void 4) (put.Ai.structure 3 info 1) (unify.constant 0) (put.Ai.constant 2 0) (put.Ai.value.Yn 1 1) (depart undefined←trap 5 interp) (load.choice.point) (store.variable.Xn 1) (either 5 81) (gettopval QP%.TRACE%.STATE) (store.integer 1) (load.value.Xn 1) (cut.to.choice.point) (put.Ai.value.Yn 6 2) (put.Ai.nil 5) (put.Ai.void 4) (put.Ai.structure 3 info 1) (unify.constant 0) (put.Ai.constant 2 0) (put.Ai.value.Yn 1 1) (depart interpret←goal 6 interp) (or.finally) (put.Ai.value.Yn 5 2) (put.Ai.void 4) (put.Ai.structure 3 info 1) (unify.constant 0) (put.Ai.constant 2 0) (put.Ai.value.Yn 1 1) (depart interpreter←debug←trap 5 interp) ) (ASSEMBLE.CLAUSE ( interpret 5 interp ) 9 (get.Ai.constant 1 %$VAR) (put.Ai.void 2) (put.Ai.constant 1 1013) (execute nerror 2 si) ) (ASSEMBLE.CLAUSE ( interpret 5 interp ) 6 (get.Ai.constant 1 true) (get.Ai.value.Xn 4 3) (proceed) ) (ASSEMBLE.CLAUSE ( interpret 5 interp ) 6 (get.Ai.constant 1 otherwise) (get.Ai.value.Xn 4 3) (proceed) ) (ASSEMBLE.CLAUSE ( interpret 5 interp ) 4 (get.Ai.constant 1 false) (fail) ) (ASSEMBLE.CLAUSE ( interpret 5 interp ) 4 (get.Ai.constant 1 fail) (fail) ) (ASSEMBLE.CLAUSE ( interpret 5 interp ) 8 (get.Ai.constant 1 %!) (get.Ai.value.Xn 4 3) (load.value.Xn 5) (cut.to.choice.point) (proceed) ) (ASSEMBLE.CLAUSE ( interpret 5 interp ) 9 (get.Ai.structure 1 %↑ 2) (unify.void 1) (unify.variable.Xn 1) (load.choice.point) (store.variable.Xn 5) (execute interpret 5 interp) ) (ASSEMBLE.CLAUSE ( interpret 5 interp ) 33 (get.Ai.structure 1 %, 2) (unify.variable.Xn 1) (allocate) (unify.variable.Yn 1) (get.Ai.variable.Yn 2 2) (get.Ai.variable.Yn 4 4) (get.Ai.variable.Yn 5 5) (put.Ai.value.Yn 5 5) (put.Ai.variable.Yn 4 3) (put.Ai.value.Yn 2 2) (call 8 interpret 5 interp) (put.Ai.value.Yn 5 5) (put.Ai.value.Yn 4 4) (put.Ai.unsafe.Yn 3 3) (put.Ai.value.Yn 2 2) (put.Ai.value.Yn 1 1) (depart interpret 5 interp) ) (ASSEMBLE.CLAUSE ( interpret 5 interp ) 34 (get.Ai.structure 1 %-%> 2) (unify.variable.Xn 1) (allocate) (unify.variable.Yn 1) (get.Ai.variable.Yn 2 2) (get.Ai.variable.Yn 4 4) (get.Ai.variable.Yn 5 5) (put.Ai.value.Yn 5 5) (put.Ai.variable.Yn 4 3) (put.Ai.value.Yn 2 2) (call 8 interpret 5 interp) (body.cut) (put.Ai.value.Yn 5 5) (put.Ai.value.Yn 4 4) (put.Ai.unsafe.Yn 3 3) (put.Ai.value.Yn 2 2) (put.Ai.value.Yn 1 1) (depart interpret 5 interp) ) (ASSEMBLE.CLAUSE ( interpret 5 interp ) 39 (get.Ai.structure 1 %; 2) (unify.variable.Xn 1) (unify.void 1) (get.Ai.structure 1 %-%> 2) (unify.variable.Xn 1) (allocate) (unify.variable.Yn 1) (get.Ai.variable.Yn 2 2) (get.Ai.variable.Yn 4 4) (get.Ai.variable.Yn 5 5) (put.Ai.value.Yn 5 5) (put.Ai.variable.Yn 4 3) (put.Ai.value.Yn 2 2) (call 8 interpret 5 interp) (body.cut) (put.Ai.value.Yn 5 5) (put.Ai.value.Yn 4 4) (put.Ai.unsafe.Yn 3 3) (put.Ai.value.Yn 2 2) (put.Ai.value.Yn 1 1) (depart interpret 5 interp) ) (ASSEMBLE.CLAUSE ( interpret 5 interp ) 12 (get.Ai.structure 1 %; 2) (unify.variable.Xn 6) (unify.variable.Xn 1) (get.Ai.structure 6 %-%> 2) (unify.void 2) (head.cut) (execute interpret 5 interp) ) (ASSEMBLE.CLAUSE ( interpret 5 interp ) 7 (get.Ai.structure 1 %; 2) (unify.variable.Xn 1) (unify.void 1) (execute interpret 5 interp) ) (ASSEMBLE.CLAUSE ( interpret 5 interp ) 7 (get.Ai.structure 1 %; 2) (unify.void 1) (unify.variable.Xn 1) (execute interpret 5 interp) ) (ASSEMBLE.CLAUSE ( interpret 5 interp ) 98 (get.Ai.structure 1 %$goal 2) (allocate) (unify.variable.Yn 5) (unify.variable.Yn 1) (get.Ai.variable.Yn 2 2) (get.Ai.variable.Yn 3 3) (get.Ai.variable.Yn 4 4) (put.Ai.variable.Yn 3 7) (put.Ai.constant 2 13) (put.Ai.value.Yn 1 5) (get.word) (load.value.Yn 7) (load.pos.word 3) (boolean.and) (store.variable.Yn 6) (load.value.Yn 6) (load.pos.word 0) (equal.to.else 44) (put.Ai.value.Yn 5 5) (put.Ai.value.Yn 4 4) (put.Ai.value.Yn 3 3) (put.Ai.value.Yn 2 2) (put.Ai.value.Yn 1 1) (depart undefined←trap 5 interp) (load.choice.point) (store.variable.Xn 1) (either 9 87) (gettopval QP%.TRACE%.STATE) (store.integer 1) (load.value.Xn 1) (cut.to.choice.point) (load.value.Yn 6) (load.pos.word 1) (equal.to.else 74) (put.Ai.value.Yn 1 3) (get.Ai.value.Yn 1 4) (put.Ai.constant 3 0) (put.Ai.value.Yn 2 1) (put.Ai.value.Yn 1 5) (depart apply 3 si) (put.Ai.value.Yn 6 5) (put.Ai.nil 5) (put.Ai.value.Yn 4 4) (put.Ai.value.Yn 3 3) (put.Ai.value.Yn 2 2) (put.Ai.value.Yn 1 1) (depart interpret←goal 6 interp) (or.finally) (put.Ai.value.Yn 5 5) (put.Ai.value.Yn 4 4) (put.Ai.value.Yn 3 3) (put.Ai.value.Yn 2 2) (put.Ai.value.Yn 1 1) (depart interpreter←debug←trap 5 interp) ) (ASSEMBLE.CLAUSE ( interpret 5 interp ) 108 (get.Ai.structure 1 special 1) (allocate) (unify.variable.Yn 1) (get.Ai.variable.Yn 2 2) (get.Ai.variable.Yn 3 3) (get.Ai.variable.Yn 4 4) (get.Ai.variable.Yn 5 6) (put.Ai.variable.Yn 3 9) (put.Ai.variable.Yn 2 8) (put.Ai.value.Yn 1 1) (functor) (put.Ai.variable.Yn 1 10) (call 13 current←module 1 si) (put.Ai.variable.Yn 4 5) (put.Ai.unsafe.Yn 3 10) (put.Ai.unsafe.Yn 2 9) (put.Ai.unsafe.Yn 1 8) (call 10 find←predicate 4 interp) (put.Ai.variable.Yn 5 7) (put.Ai.void 4) (put.Ai.void 3) (put.Ai.void 2) (put.Ai.value.Yn 1 5) (call 10 predicate←parts 5 si) (load.value.Yn 7) (load.pos.word 3) (boolean.and) (store.variable.Xn 1) (load.value.Xn 1) (load.pos.word 0) (equal.to.else 70) (put.Ai.value.Yn 5 5) (put.Ai.value.Yn 4 4) (put.Ai.value.Yn 3 3) (put.Ai.value.Yn 2 2) (put.Ai.value.Yn 1 1) (depart undefined←trap 5 interp) (load.choice.point) (store.variable.Xn 1) (either 9 97) (gettopval QP%.TRACE%.STATE) (store.integer 1) (load.value.Xn 1) (cut.to.choice.point) (put.Ai.value.Yn 7 6) (put.Ai.value.Yn 6 5) (put.Ai.nil 5) (put.Ai.value.Yn 4 4) (put.Ai.value.Yn 3 3) (put.Ai.value.Yn 2 2) (put.Ai.value.Yn 1 1) (depart interpret2 7 interp) (or.finally) (put.Ai.unsafe.Yn 5 5) (put.Ai.value.Yn 4 4) (put.Ai.value.Yn 3 3) (put.Ai.value.Yn 2 2) (put.Ai.value.Yn 1 1) (depart interpreter←debug←trap 5 interp) ) (ASSEMBLE.CLAUSE ( debug←return 6 interp ) 55 (allocate) (get.Ai.variable.Yn 1 1) (get.Ai.variable.Yn 2 2) (get.Ai.variable.Yn 3 3) (get.Ai.variable.Yn 4 4) (get.Ai.variable.Yn 5 5) (get.Ai.variable.Yn 6 7) (put.Ai.variable.Yn 5 8) (put.Ai.void 4) (put.Ai.void 3) (put.Ai.void 2) (put.Ai.value.Yn 1 7) (call 11 predicate←parts 5 si) (load.value.Yn 8) (load.pos.word 3) (boolean.and) (store.variable.Xn 1) (load.value.Xn 1) (load.pos.word 0) (not.equal.to) (put.Ai.variable.Yn 2 6) (put.Ai.value.Yn 1 7) (call 9 real←proc 2 interp) (load.choice.point) (store.variable.Xn 7) (put.Ai.unsafe.Yn 6 6) (put.Ai.value.Yn 5 5) (put.Ai.value.Yn 4 4) (put.Ai.value.Yn 3 3) (put.Ai.value.Yn 2 2) (put.Ai.value.Yn 1 1) (depart interpret2 7 interp) ) (ASSEMBLE.CLAUSE ( interpret2 7 interp ) 13 (get.Ai.structure 1 depth 1) (unify.variable.Xn 8) (put.Ai.value.Xn 1 3) (get.Ai.value.Xn 4 1) (head.cut) (put.Ai.value.Xn 2 8) (execute info←depth 2 interp) ) (ASSEMBLE.CLAUSE ( interpret2 7 interp ) 11 (get.Ai.structure 1 subgoal←of 1) (unify.variable.Xn 1) (put.Ai.value.Xn 2 3) (get.Ai.value.Xn 4 2) (head.cut) (execute info←member 2 interp) ) (ASSEMBLE.CLAUSE ( interpret2 7 interp ) 13 (get.Ai.structure 1 ancestors 1) (unify.variable.Xn 8) (put.Ai.value.Xn 1 3) (get.Ai.value.Xn 4 1) (head.cut) (put.Ai.value.Xn 2 8) (execute info←to←list 2 interp) ) (ASSEMBLE.CLAUSE ( interpret2 7 interp ) 10 (get.Ai.list 1) (unify.variable.Xn 1) (unify.variable.Xn 8) (get.Ai.value.Xn 4 3) (head.cut) (put.Ai.value.Xn 2 8) (execute %. 2 si) ) (ASSEMBLE.CLAUSE ( interpret2 7 interp ) 38 (get.Ai.structure 1 call 1) (allocate) (unify.variable.Yn 6) (get.Ai.variable.Yn 2 2) (get.Ai.variable.Yn 3 3) (get.Ai.variable.Yn 4 4) (get.Ai.variable.Yn 5 5) (head.cut) (put.Ai.value.Yn 1 6) (call 9 check←goal←not←var 1 interp) (put.Ai.variable.Yn 2 1) (put.Ai.value.Yn 1 6) (call 8 transform←body 2 interp) (put.Ai.value.Yn 5 5) (put.Ai.value.Yn 4 4) (put.Ai.value.Yn 3 3) (put.Ai.value.Yn 2 2) (put.Ai.unsafe.Yn 1 1) (depart interpret←next 5 interp) ) (ASSEMBLE.CLAUSE ( interpret2 7 interp ) 27 (get.Ai.structure 1 %\%+ 1) (unify.variable.Xn 1) (put.Ai.value.Xn 8 3) (put.Ai.value.Xn 9 5) (put.Ai.value.Xn 5 7) (allocate) (load.value.Xn 2) (add.pos.word 1) (store.variable.Xn 2) (put.Ai.structure 3 info 4) (unify.value.Xn 2) (unify.value.Xn 1) (unify.local.Xn 9) (unify.local.Xn 8) (call 3 interpret 5 interp) (body.cut) (fail) ) (ASSEMBLE.CLAUSE ( interpret2 7 interp ) 7 (get.Ai.structure 1 %\%+ 1) (unify.void 1) (get.Ai.value.Xn 4 3) (cut.proceed) ) (ASSEMBLE.CLAUSE ( interpret2 7 interp ) 17 (get.Ai.structure 1 put 1) (unify.variable.Xn 1) (get.Ai.value.Xn 4 3) (head.cut) (allocate) (put.Ai.variable.Yn 2 1) (call 4 evaluate 2 si) (put.Ai.unsafe.Yn 1 1) (depart put 1 si) ) (ASSEMBLE.CLAUSE ( interpret2 7 interp ) 17 (get.Ai.structure 1 skip 1) (unify.variable.Xn 1) (get.Ai.value.Xn 4 3) (head.cut) (allocate) (put.Ai.variable.Yn 2 1) (call 4 evaluate 2 si) (put.Ai.unsafe.Yn 1 1) (depart skip 1 si) ) (ASSEMBLE.CLAUSE ( interpret2 7 interp ) 17 (get.Ai.structure 1 tab 1) (unify.variable.Xn 1) (get.Ai.value.Xn 4 3) (head.cut) (allocate) (put.Ai.variable.Yn 2 1) (call 4 evaluate 2 si) (put.Ai.unsafe.Yn 1 1) (depart tab 1 si) ) (ASSEMBLE.CLAUSE ( interpret2 7 interp ) 20 (get.Ai.structure 1 put 2) (allocate) (unify.variable.Yn 1) (unify.variable.Xn 1) (get.Ai.value.Xn 4 3) (head.cut) (put.Ai.variable.Yn 2 2) (call 5 evaluate 2 si) (put.Ai.unsafe.Yn 2 2) (put.Ai.value.Yn 1 1) (depart put 2 si) ) (ASSEMBLE.CLAUSE ( interpret2 7 interp ) 20 (get.Ai.structure 1 skip 2) (allocate) (unify.variable.Yn 1) (unify.variable.Xn 1) (get.Ai.value.Xn 4 3) (head.cut) (put.Ai.variable.Yn 2 2) (call 5 evaluate 2 si) (put.Ai.unsafe.Yn 2 2) (put.Ai.value.Yn 1 1) (depart skip 2 si) ) (ASSEMBLE.CLAUSE ( interpret2 7 interp ) 20 (get.Ai.structure 1 tab 2) (allocate) (unify.variable.Yn 1) (unify.variable.Xn 1) (get.Ai.value.Xn 4 3) (head.cut) (put.Ai.variable.Yn 2 2) (call 5 evaluate 2 si) (put.Ai.unsafe.Yn 2 2) (put.Ai.value.Yn 1 1) (depart tab 2 si) ) (ASSEMBLE.CLAUSE ( interpret2 7 interp ) 17 (get.Ai.structure 1 ttyput 1) (unify.variable.Xn 1) (get.Ai.value.Xn 4 3) (head.cut) (allocate) (put.Ai.variable.Yn 2 1) (call 4 evaluate 2 si) (put.Ai.unsafe.Yn 1 1) (depart ttyput 1 si) ) (ASSEMBLE.CLAUSE ( interpret2 7 interp ) 17 (get.Ai.structure 1 ttyskip 1) (unify.variable.Xn 1) (get.Ai.value.Xn 4 3) (head.cut) (allocate) (put.Ai.variable.Yn 2 1) (call 4 evaluate 2 si) (put.Ai.unsafe.Yn 1 1) (depart ttyskip 1 si) ) (ASSEMBLE.CLAUSE ( interpret2 7 interp ) 17 (get.Ai.structure 1 ttytab 1) (unify.variable.Xn 1) (get.Ai.value.Xn 4 3) (head.cut) (allocate) (put.Ai.variable.Yn 2 1) (call 4 evaluate 2 si) (put.Ai.unsafe.Yn 1 1) (depart ttytab 1 si) ) (ASSEMBLE.CLAUSE ( interpret2 7 interp ) 12 (get.Ai.structure 1 is 2) (unify.variable.Xn 8) (unify.variable.Xn 1) (get.Ai.value.Xn 4 3) (head.cut) (put.Ai.value.Xn 2 8) (execute evaluate 2 si) ) (ASSEMBLE.CLAUSE ( interpret2 7 interp ) 25 (get.Ai.structure 1 %=%:%= 2) (unify.variable.Xn 1) (allocate) (unify.variable.Yn 3) (get.Ai.value.Xn 4 3) (head.cut) (put.Ai.variable.Yn 2 2) (call 6 evaluate 2 si) (put.Ai.variable.Yn 2 1) (put.Ai.value.Yn 1 3) (call 5 evaluate 2 si) (load.value.Yn 2) (load.value.Yn 1) (equal.to) (progress) ) (ASSEMBLE.CLAUSE ( interpret2 7 interp ) 25 (get.Ai.structure 1 %=%\%= 2) (unify.variable.Xn 1) (allocate) (unify.variable.Yn 3) (get.Ai.value.Xn 4 3) (head.cut) (put.Ai.variable.Yn 2 2) (call 6 evaluate 2 si) (put.Ai.variable.Yn 2 1) (put.Ai.value.Yn 1 3) (call 5 evaluate 2 si) (load.value.Yn 2) (load.value.Yn 1) (not.equal.to) (progress) ) (ASSEMBLE.CLAUSE ( interpret2 7 interp ) 25 (get.Ai.structure 1 %< 2) (unify.variable.Xn 1) (allocate) (unify.variable.Yn 3) (get.Ai.value.Xn 4 3) (head.cut) (put.Ai.variable.Yn 2 2) (call 6 evaluate 2 si) (put.Ai.variable.Yn 2 1) (put.Ai.value.Yn 1 3) (call 5 evaluate 2 si) (load.value.Yn 2) (load.value.Yn 1) (less.than) (progress) ) (ASSEMBLE.CLAUSE ( interpret2 7 interp ) 25 (get.Ai.structure 1 %=%< 2) (unify.variable.Xn 1) (allocate) (unify.variable.Yn 3) (get.Ai.value.Xn 4 3) (head.cut) (put.Ai.variable.Yn 2 2) (call 6 evaluate 2 si) (put.Ai.variable.Yn 2 1) (put.Ai.value.Yn 1 3) (call 5 evaluate 2 si) (load.value.Yn 2) (load.value.Yn 1) (not.greater.than) (progress) ) (ASSEMBLE.CLAUSE ( interpret2 7 interp ) 25 (get.Ai.structure 1 %>%= 2) (unify.variable.Xn 1) (allocate) (unify.variable.Yn 3) (get.Ai.value.Xn 4 3) (head.cut) (put.Ai.variable.Yn 2 2) (call 6 evaluate 2 si) (put.Ai.variable.Yn 2 1) (put.Ai.value.Yn 1 3) (call 5 evaluate 2 si) (load.value.Yn 2) (load.value.Yn 1) (not.less.than) (progress) ) (ASSEMBLE.CLAUSE ( interpret2 7 interp ) 25 (get.Ai.structure 1 %> 2) (unify.variable.Xn 1) (allocate) (unify.variable.Yn 3) (get.Ai.value.Xn 4 3) (head.cut) (put.Ai.variable.Yn 2 2) (call 6 evaluate 2 si) (put.Ai.variable.Yn 2 1) (put.Ai.value.Yn 1 3) (call 5 evaluate 2 si) (load.value.Yn 2) (load.value.Yn 1) (greater.than) (progress) ) (ASSEMBLE.CLAUSE ( interpret2 7 interp ) 77 (allocate) (get.Ai.variable.Yn 1 1) (get.Ai.variable.Yn 2 2) (get.Ai.variable.Yn 3 3) (get.Ai.variable.Yn 4 4) (get.Ai.variable.Yn 5 5) (get.Ai.variable.Yn 6 6) (put.Ai.variable.Yn 5 8) (put.Ai.void 4) (put.Ai.void 3) (put.Ai.void 2) (put.Ai.value.Yn 1 6) (call 11 predicate←parts 5 si) (load.value.Yn 8) (load.pos.word 3) (boolean.and) (store.variable.Yn 7) (load.value.Yn 7) (load.pos.word 0) (equal.to.else 47) (put.Ai.value.Yn 5 6) (put.Ai.value.Yn 4 4) (put.Ai.value.Yn 3 3) (put.Ai.value.Yn 2 2) (put.Ai.value.Yn 1 1) (depart undefined←trap 5 interp) (load.value.Yn 7) (load.pos.word 1) (equal.to.else 65) (put.Ai.value.Yn 1 3) (get.Ai.value.Yn 1 4) (put.Ai.constant 3 0) (put.Ai.value.Yn 2 1) (put.Ai.value.Yn 1 6) (depart apply 3 si) (put.Ai.value.Yn 6 6) (put.Ai.value.Yn 5 5) (put.Ai.value.Yn 4 4) (put.Ai.value.Yn 3 3) (put.Ai.value.Yn 2 2) (put.Ai.value.Yn 1 1) (depart interpret←goal 6 interp) ) (ASSEMBLE.CLAUSE ( invisible←goal 1 interp ) 4 (get.Ai.constant 1 true) (proceed) ) (ASSEMBLE.CLAUSE ( invisible←goal 1 interp ) 4 (get.Ai.constant 1 otherwise) (proceed) ) (ASSEMBLE.CLAUSE ( invisible←goal 1 interp ) 4 (get.Ai.constant 1 false) (proceed) ) (ASSEMBLE.CLAUSE ( invisible←goal 1 interp ) 4 (get.Ai.constant 1 fail) (proceed) ) (ASSEMBLE.CLAUSE ( invisible←goal 1 interp ) 4 (get.Ai.constant 1 %!) (proceed) ) (ASSEMBLE.CLAUSE ( invisible←goal 1 interp ) 5 (get.Ai.structure 1 %$goal 2) (unify.void 2) (proceed) ) (ASSEMBLE.CLAUSE ( special←goal 1 interp ) 5 (get.Ai.structure 1 depth 1) (unify.void 1) (proceed) ) (ASSEMBLE.CLAUSE ( special←goal 1 interp ) 5 (get.Ai.structure 1 subgoal←of 1) (unify.void 1) (proceed) ) (ASSEMBLE.CLAUSE ( special←goal 1 interp ) 5 (get.Ai.structure 1 ancestors 1) (unify.void 1) (proceed) ) (ASSEMBLE.CLAUSE ( special←goal 1 interp ) 3 (get.Ai.list 1) (unify.void 2) (proceed) ) (ASSEMBLE.CLAUSE ( special←goal 1 interp ) 5 (get.Ai.structure 1 call 1) (unify.void 1) (proceed) ) (ASSEMBLE.CLAUSE ( special←goal 1 interp ) 5 (get.Ai.structure 1 %\%+ 1) (unify.void 1) (proceed) ) (ASSEMBLE.CLAUSE ( special←goal 1 interp ) 5 (get.Ai.structure 1 put 1) (unify.void 1) (proceed) ) (ASSEMBLE.CLAUSE ( special←goal 1 interp ) 5 (get.Ai.structure 1 skip 1) (unify.void 1) (proceed) ) (ASSEMBLE.CLAUSE ( special←goal 1 interp ) 5 (get.Ai.structure 1 tab 1) (unify.void 1) (proceed) ) (ASSEMBLE.CLAUSE ( special←goal 1 interp ) 5 (get.Ai.structure 1 put 2) (unify.void 2) (proceed) ) (ASSEMBLE.CLAUSE ( special←goal 1 interp ) 5 (get.Ai.structure 1 skip 2) (unify.void 2) (proceed) ) (ASSEMBLE.CLAUSE ( special←goal 1 interp ) 5 (get.Ai.structure 1 tab 2) (unify.void 2) (proceed) ) (ASSEMBLE.CLAUSE ( special←goal 1 interp ) 5 (get.Ai.structure 1 ttyput 1) (unify.void 1) (proceed) ) (ASSEMBLE.CLAUSE ( special←goal 1 interp ) 5 (get.Ai.structure 1 ttyskip 1) (unify.void 1) (proceed) ) (ASSEMBLE.CLAUSE ( special←goal 1 interp ) 5 (get.Ai.structure 1 ttytab 1) (unify.void 1) (proceed) ) (ASSEMBLE.CLAUSE ( special←goal 1 interp ) 5 (get.Ai.structure 1 is 2) (unify.void 2) (proceed) ) (ASSEMBLE.CLAUSE ( special←goal 1 interp ) 5 (get.Ai.structure 1 %=%:%= 2) (unify.void 2) (proceed) ) (ASSEMBLE.CLAUSE ( special←goal 1 interp ) 5 (get.Ai.structure 1 %=%\%= 2) (unify.void 2) (proceed) ) (ASSEMBLE.CLAUSE ( special←goal 1 interp ) 5 (get.Ai.structure 1 %< 2) (unify.void 2) (proceed) ) (ASSEMBLE.CLAUSE ( special←goal 1 interp ) 5 (get.Ai.structure 1 %=%< 2) (unify.void 2) (proceed) ) (ASSEMBLE.CLAUSE ( special←goal 1 interp ) 5 (get.Ai.structure 1 %>%= 2) (unify.void 2) (proceed) ) (ASSEMBLE.CLAUSE ( special←goal 1 interp ) 5 (get.Ai.structure 1 %> 2) (unify.void 2) (proceed) ) (ASSEMBLE.CLAUSE ( evaluates←argument 2 interp ) 8 (get.Ai.structure 1 put 1) (unify.void 1) (get.Ai.constant 2 1) (proceed) ) (ASSEMBLE.CLAUSE ( evaluates←argument 2 interp ) 8 (get.Ai.structure 1 put 2) (unify.void 2) (get.Ai.constant 2 2) (proceed) ) (ASSEMBLE.CLAUSE ( evaluates←argument 2 interp ) 8 (get.Ai.structure 1 ttyput 1) (unify.void 1) (get.Ai.constant 2 1) (proceed) ) (ASSEMBLE.CLAUSE ( evaluates←argument 2 interp ) 8 (get.Ai.structure 1 skip 1) (unify.void 1) (get.Ai.constant 2 1) (proceed) ) (ASSEMBLE.CLAUSE ( evaluates←argument 2 interp ) 8 (get.Ai.structure 1 skip 2) (unify.void 2) (get.Ai.constant 2 2) (proceed) ) (ASSEMBLE.CLAUSE ( evaluates←argument 2 interp ) 8 (get.Ai.structure 1 ttyskip 1) (unify.void 1) (get.Ai.constant 2 1) (proceed) ) (ASSEMBLE.CLAUSE ( evaluates←argument 2 interp ) 8 (get.Ai.structure 1 tab 1) (unify.void 1) (get.Ai.constant 2 1) (proceed) ) (ASSEMBLE.CLAUSE ( evaluates←argument 2 interp ) 8 (get.Ai.structure 1 tab 2) (unify.void 2) (get.Ai.constant 2 2) (proceed) ) (ASSEMBLE.CLAUSE ( evaluates←argument 2 interp ) 8 (get.Ai.structure 1 ttytab 1) (unify.void 1) (get.Ai.constant 2 1) (proceed) ) (ASSEMBLE.CLAUSE ( evaluates←argument 2 interp ) 8 (get.Ai.structure 1 is 2) (unify.void 2) (get.Ai.constant 2 2) (proceed) ) (ASSEMBLE.CLAUSE ( evaluates←argument 2 interp ) 8 (get.Ai.structure 1 %=%:%= 2) (unify.void 2) (get.Ai.constant 2 1) (proceed) ) (ASSEMBLE.CLAUSE ( evaluates←argument 2 interp ) 8 (get.Ai.structure 1 %=%:%= 2) (unify.void 2) (get.Ai.constant 2 2) (proceed) ) (ASSEMBLE.CLAUSE ( evaluates←argument 2 interp ) 8 (get.Ai.structure 1 %=%\%= 2) (unify.void 2) (get.Ai.constant 2 1) (proceed) ) (ASSEMBLE.CLAUSE ( evaluates←argument 2 interp ) 8 (get.Ai.structure 1 %=%\%= 2) (unify.void 2) (get.Ai.constant 2 2) (proceed) ) (ASSEMBLE.CLAUSE ( evaluates←argument 2 interp ) 8 (get.Ai.structure 1 %< 2) (unify.void 2) (get.Ai.constant 2 1) (proceed) ) (ASSEMBLE.CLAUSE ( evaluates←argument 2 interp ) 8 (get.Ai.structure 1 %< 2) (unify.void 2) (get.Ai.constant 2 2) (proceed) ) (ASSEMBLE.CLAUSE ( evaluates←argument 2 interp ) 8 (get.Ai.structure 1 %=%< 2) (unify.void 2) (get.Ai.constant 2 1) (proceed) ) (ASSEMBLE.CLAUSE ( evaluates←argument 2 interp ) 8 (get.Ai.structure 1 %=%< 2) (unify.void 2) (get.Ai.constant 2 2) (proceed) ) (ASSEMBLE.CLAUSE ( evaluates←argument 2 interp ) 8 (get.Ai.structure 1 %>%= 2) (unify.void 2) (get.Ai.constant 2 1) (proceed) ) (ASSEMBLE.CLAUSE ( evaluates←argument 2 interp ) 8 (get.Ai.structure 1 %>%= 2) (unify.void 2) (get.Ai.constant 2 2) (proceed) ) (ASSEMBLE.CLAUSE ( evaluates←argument 2 interp ) 8 (get.Ai.structure 1 %> 2) (unify.void 2) (get.Ai.constant 2 1) (proceed) ) (ASSEMBLE.CLAUSE ( evaluates←argument 2 interp ) 8 (get.Ai.structure 1 %> 2) (unify.void 2) (get.Ai.constant 2 2) (proceed) ) (ASSEMBLE.CLAUSE ( depth 1 interp ) 4 (get.Ai.constant 1 0) (proceed) ) (ASSEMBLE.CLAUSE ( subgoal←of 1 interp ) 1 (fail) ) (ASSEMBLE.CLAUSE ( ancestors 1 interp ) 4 (get.Ai.constant 1 NIL) (proceed) ) (ASSEMBLE.CLAUSE ( %\%+ 1 interp ) 14 (allocate) (load.choice.point) (store.variable.Yn 1) (either 4 14) (call 4 call 1 interp) (load.value.Yn 1) (cut.to.choice.point) (fail) (or.finally) (progress) ) (ASSEMBLE.CLAUSE ( interpret←next 5 interp ) 19 (put.Ai.value.Xn 6 3) (put.Ai.value.Xn 7 5) (load.value.Xn 2) (add.pos.word 1) (store.variable.Xn 2) (load.choice.point) (store.variable.Xn 5) (put.Ai.structure 3 info 4) (unify.value.Xn 2) (unify.local.Xn 1) (unify.local.Xn 7) (unify.local.Xn 6) (execute interpret 5 interp) ) (ASSEMBLE.CLAUSE ( interpret←goal 6 interp ) 66 (allocate) (get.Ai.variable.Yn 1 7) (get.Ai.variable.Yn 4 4) (get.Ai.variable.Yn 6 6) (load.value.Xn 2) (add.pos.word 1) (store.variable.Yn 2) (put.Ai.variable.Yn 1 3) (get.Ai.structure 1 info 4) (unify.value.Yn 2) (unify.local.Yn 7) (unify.local.Xn 5) (unify.local.Xn 3) (gettopval QP%.MAXDEPTH) (store.variable.Xn 6) (load.value.Yn 2) (load.value.Xn 6) (greater.than.else 37) (put.Ai.value.Yn 5 6) (put.Ai.value.Yn 4 4) (put.Ai.value.Yn 1 7) (depart depth←trap 6 interp) (load.choice.point) (store.variable.Yn 5) (put.Ai.constant 3 1) (put.Ai.structure 1 %:%- 2) (unify.local.Yn 7) (unify.variable.Yn 1) (put.Ai.structure 2 %$ 1) (unify.value.Xn 1) (put.Ai.value.Yn 1 6) (call 8 apply 3 si) (put.Ai.value.Yn 5 5) (put.Ai.value.Yn 4 4) (put.Ai.unsafe.Yn 3 3) (put.Ai.value.Yn 2 2) (put.Ai.value.Yn 1 1) (depart interpret 5 interp) ) (ASSEMBLE.CLAUSE ( undefined←trap 5 interp ) 53 (allocate) (get.Ai.variable.Yn 1 1) (get.Ai.variable.Yn 2 2) (get.Ai.variable.Yn 3 3) (get.Ai.variable.Yn 4 4) (get.Ai.variable.Yn 5 5) (load.choice.point) (store.variable.Xn 1) (either 8 42) (gettopval QP%.UNKNOWN) (store.integer 1) (load.value.Xn 1) (cut.to.choice.point) (put.Ai.value.Yn 1 5) (call 8 not←user←special 1 interp) (put.Ai.value.Yn 2 5) (put.Ai.value.Yn 1 1) (call 8 undefined←warning 2 interp) (call 8 force←error←trap 0 interp) (jump.to 43) (or.finally) (put.Ai.value.Yn 5 5) (put.Ai.value.Yn 4 4) (put.Ai.value.Yn 3 3) (put.Ai.value.Yn 2 2) (put.Ai.value.Yn 1 1) (depart interpreter←debug←trap 5 interp) ) (ASSEMBLE.CLAUSE ( not←user←special 1 interp ) 21 (allocate) (put.Ai.symbol 4 user) (put.Ai.variable.Yn 3 2) (put.Ai.variable.Yn 2 1) (call 5 procedure 4 si) (put.Ai.symbol 3 user) (put.Ai.unsafe.Yn 2 2) (put.Ai.unsafe.Yn 1 1) (call 3 user 3 si) (body.cut) (fail) ) (ASSEMBLE.CLAUSE ( not←user←special 1 interp ) 1 (proceed) ) (ASSEMBLE.CLAUSE ( maxdepth 1 interp ) 34 (allocate) (get.Ai.variable.Yn 1 2) (put.Ai.value.Yn 1 2) (is.a 24) (load.value.Yn 2) (load.pos.word 1) (less.than.else 20) (put.Ai.variable.Yn 1 1) (get.Ai.constant 1 1) (jump.to 24) (put.Ai.value.Yn 1 2) (get.Ai.variable.Yn 1 1) (load.value.Yn 1) (settopval QP%.MAXDEPTH) (put.Ai.list 3) (unify.local.Yn 1) (unify.nil) (put.Ai.symbol 2 %[Interpreter% maxdepth%(%~w%)% set%]%~n) (put.Ai.symbol 1 user) (depart format 3 format) ) (ASSEMBLE.CLAUSE ( depth←trap 6 interp ) 36 (allocate) (get.Ai.variable.Yn 1 1) (get.Ai.variable.Yn 2 2) (get.Ai.variable.Yn 3 3) (get.Ai.variable.Yn 4 4) (get.Ai.variable.Yn 5 5) (put.Ai.list 3) (unify.local.Xn 6) (unify.nil) (put.Ai.symbol 2 %[% Warning%:% Interpreter% maxdepth%(%~w%)% exceeded%]%~n) (put.Ai.symbol 1 user) (call 8 format 3 format) (call 8 force←error←trap 0 interp) (put.Ai.value.Yn 5 5) (put.Ai.value.Yn 4 4) (put.Ai.value.Yn 3 3) (put.Ai.value.Yn 2 2) (put.Ai.value.Yn 1 1) (depart interpreter←debug←trap 5 interp) ) (ASSEMBLE.CLAUSE ( find←predicate 4 interp ) 5 (allocate) (call 3 check←predicate 4 si) (depart.cut) ) (ASSEMBLE.CLAUSE ( find←predicate 4 interp ) 4 (get.Ai.constant 4 0) (proceed) ) (ASSEMBLE.CLAUSE ( find←procedure 5 interp ) 10 (get.Ai.constant 1 0) (get.Ai.symbol 4 user) (put.Ai.value.Xn 1 5) (head.cut) (functor) (proceed) ) (ASSEMBLE.CLAUSE ( find←procedure 5 interp ) 2 (execute procedure 4 si) ) (ASSEMBLE.CLAUSE ( info←tail 2 interp ) 8 (get.Ai.structure 1 info 4) (unify.void 3) (unify.variable.Xn 1) (get.Ai.value.Xn 2 1) (proceed) ) (ASSEMBLE.CLAUSE ( info←depth 2 interp ) 6 (get.Ai.constant 1 NIL) (get.Ai.symbol 2 C) (proceed) ) (ASSEMBLE.CLAUSE ( info←depth 2 interp ) 10 (get.Ai.structure 1 info 1) (unify.constant 0) (get.Ai.constant 2 0) (proceed) ) (ASSEMBLE.CLAUSE ( info←depth 2 interp ) 8 (get.Ai.structure 1 info 4) (unify.variable.Xn 1) (unify.void 3) (get.Ai.value.Xn 2 1) (proceed) ) (ASSEMBLE.CLAUSE ( info←debug←member 2 interp ) 7 (get.Ai.structure 2 info 4) (unify.void 2) (unify.local.Xn 1) (unify.void 1) (proceed) ) (ASSEMBLE.CLAUSE ( info←debug←member 2 interp ) 7 (get.Ai.structure 2 info 4) (unify.void 3) (unify.variable.Xn 2) (execute info←debug←member 2 interp) ) (ASSEMBLE.CLAUSE ( info←member 2 interp ) 16 (allocate) (get.Ai.variable.Yn 1 1) (put.Ai.value.Xn 1 2) (put.Ai.variable.Yn 2 2) (call 5 get←ancestors 2 interp) (put.Ai.unsafe.Yn 2 2) (put.Ai.value.Yn 1 1) (depart info←member2 2 interp) ) (ASSEMBLE.CLAUSE ( info←member2 2 interp ) 10 (get.Ai.list 2) (unify.variable.Xn 2) (unify.void 1) (get.Ai.structure 2 info 4) (unify.void 1) (unify.local.Xn 1) (unify.void 2) (proceed) ) (ASSEMBLE.CLAUSE ( info←member2 2 interp ) 5 (get.Ai.list 2) (unify.void 1) (unify.variable.Xn 2) (execute info←member2 2 interp) ) (ASSEMBLE.CLAUSE ( info←to←list 2 interp ) 14 (allocate) (get.Ai.variable.Yn 2 2) (put.Ai.variable.Yn 2 1) (call 5 get←ancestors 2 interp) (put.Ai.value.Yn 2 2) (put.Ai.unsafe.Yn 1 1) (depart info←to←list2 2 interp) ) (ASSEMBLE.CLAUSE ( info←to←list2 2 interp ) 5 (get.Ai.constant 1 NIL) (get.Ai.nil 2) (cut.proceed) ) (ASSEMBLE.CLAUSE ( info←to←list2 2 interp ) 14 (get.Ai.list 1) (unify.variable.Xn 3) (unify.variable.Xn 1) (get.Ai.structure 3 info 4) (unify.void 1) (unify.variable.Xn 3) (unify.void 2) (get.Ai.list 2) (unify.value.Xn 3) (unify.variable.Xn 2) (execute info←to←list2 2 interp) ) STOP