(ASSEMBLE.CLAUSE ( garbage←collector←enabled 1 si ) 6 (start.calling QP%.SECURE 0) (call.lisp 1) (unify.local.Xn 1) (proceed) ) (ASSEMBLE.CLAUSE ( enable←garbage←collector 0 si ) 28 (allocate) (put.Ai.variable.Yn 1 1) (call 4 garbage←collector←enabled 1 si) (load.choice.point) (store.variable.Xn 1) (either 4 28) (put.Ai.unsafe.Yn 2 1) (get.Ai.nil 2) (load.value.Xn 1) (cut.to.choice.point) (put.Ai.symbol 1 Prolog% does% not% have% valid% security% code%.% % Please% see% your% system% manager%,% or% Xerox% representative%.) (call 3 write 1 si) (put.Ai.constant 1 3) (depart prolog←event 1 si) (or.finally) (progress) ) (ASSEMBLE.CLAUSE ( cursor 2 si ) 17 (allocate) (get.Ai.variable.Yn 1 1) (put.Ai.value.Yn 1 1) (compare) (load.pos.word 0) (equal.to) (body.cut) (put.Ai.value.Yn 3 1) (put.Ai.nil 2) (put.Ai.symbol 1 CURSOR) (depart lisp←apply 3 si) ) (ASSEMBLE.CLAUSE ( cursor 2 si ) 18 (allocate) (get.Ai.variable.Yn 1 2) (get.Ai.variable.Yn 2 1) (put.Ai.value.Yn 1 1) (is.a 254) (body.cut) (put.Ai.value.Yn 3 2) (put.Ai.list 2) (unify.local.Yn 1) (unify.nil) (put.Ai.symbol 1 CURSOR) (depart lisp←apply 3 si) ) (ASSEMBLE.CLAUSE ( with←waiting←cursor 2 si ) 58 (allocate) (get.Ai.variable.Yn 1 3) (get.Ai.variable.Yn 2 4) (put.Ai.value.Yn 1 3) (is.a 254) (put.Ai.variable.Yn 2 5) (put.Ai.symbol 1 WAITINGCURSOR) (call 8 gettopval 2 si) (put.Ai.unsafe.Yn 2 5) (put.Ai.variable.Yn 1 2) (call 7 cursor 2 si) (either 7 41) (put.Ai.value.Yn 2 4) (put.Ai.value.Yn 1 3) (call 5 call←direct 2 interp) (put.Ai.variable.Yn 1 1) (get.Ai.constant 1 true) (jump.to 47) (or.finally) (put.Ai.variable.Yn 1 1) (get.Ai.constant 1 false) (put.Ai.unsafe.Yn 2 2) (put.Ai.void 1) (call 4 cursor 2 si) (body.cut) (put.Ai.unsafe.Yn 1 1) (get.Ai.constant 1 true) (progress) ) (ASSEMBLE.CLAUSE ( SETTOPVAL 2 si ) 8 (start.calling SETTOPVAL 2) (send.direct.Ai 1) (send.direct.Ai 2) (call.lisp 1) (unify.void 1) (proceed) ) (ASSEMBLE.CLAUSE ( lisp←call←prolog 0 si ) 69 (allocate) (put.Ai.list 2) (unify.variable.Yn 7) (unify.variable.Yn 8) (put.Ai.symbol 1 QP%.LISP%.CALL%.PROLOG%.GOAL) (call 11 gettopval 2 si) (put.Ai.variable.Yn 3 2) (put.Ai.variable.Yn 2 6) (put.Ai.value.Yn 1 8) (call 10 filter←lisp←args 3 si) (put.Ai.list 2) (unify.value.Yn 7) (unify.local.Yn 6) (put.Ai.variable.Yn 1 5) (call 8 %=%.%. 2 si) (load.choice.point) (store.variable.Yn 4) (either 8 47) (put.Ai.unsafe.Yn 1 5) (call 7 call 1 interp) (load.value.Yn 4) (cut.to.choice.point) (put.Ai.variable.Yn 1 3) (get.Ai.constant 1 true) (jump.to 53) (or.finally) (put.Ai.variable.Yn 1 3) (get.Ai.constant 1 false) (put.Ai.variable.Yn 3 1) (put.Ai.unsafe.Yn 2 3) (put.Ai.unsafe.Yn 1 2) (call 4 result←to←send←to←lisp 3 si) (put.Ai.unsafe.Yn 2 1) (put.Ai.symbol 1 QP%.LISP%.CALL%.PROLOG%.RESULT) (call 3 SETTOPVAL 2 si) (depart halt 0 si) ) (ASSEMBLE.CLAUSE ( filter←lisp←args 3 si ) 6 (get.Ai.constant 1 NIL) (get.Ai.nil 2) (get.Ai.nil 3) (proceed) ) (ASSEMBLE.CLAUSE ( filter←lisp←args 3 si ) 13 (get.Ai.list 1) (unify.symbol %*VALUE%*) (unify.variable.Xn 1) (get.Ai.list 2) (unify.variable.Xn 4) (unify.variable.Xn 2) (get.Ai.list 3) (unify.value.Xn 4) (unify.variable.Xn 3) (head.cut) (execute filter←lisp←args 3 si) ) (ASSEMBLE.CLAUSE ( filter←lisp←args 3 si ) 8 (get.Ai.list 1) (unify.variable.Xn 4) (unify.variable.Xn 1) (get.Ai.list 2) (unify.value.Xn 4) (unify.variable.Xn 2) (execute filter←lisp←args 3 si) ) (ASSEMBLE.CLAUSE ( result←to←send←to←lisp 3 si ) 8 (get.Ai.constant 1 NIL) (get.Ai.symbol 2 true) (get.Ai.symbol 3 T) (proceed) ) (ASSEMBLE.CLAUSE ( result←to←send←to←lisp 3 si ) 5 (get.Ai.symbol 2 true) (get.Ai.value.Xn 3 1) (proceed) ) (ASSEMBLE.CLAUSE ( result←to←send←to←lisp 3 si ) 4 (get.Ai.symbol 2 false) (get.Ai.nil 3) (proceed) ) STOP