(ASSEMBLE.CLAUSE ( style←check←single←vars 4 si ) 59
(allocate)
(get.Ai.variable.Yn 1 1)
(get.Ai.variable.Yn 2 3)
(get.Ai.variable.Yn 3 4)
(put.Ai.constant 2 1)
(put.Ai.symbol 1 QP%.STYLE%.SINGLE)
(call 7 gettopval 2 si)
(put.Ai.constant 3 2)
(put.Ai.symbol 2 %.)
(put.Ai.value.Yn 1 1)
(functor)
(body.cut)
(put.Ai.variable.Yn 2 2)
(put.Ai.symbol 1 QP%.LOAD%.COUNT)
(call 7 gettopval 2 si)
(put.Ai.list 2)
(unify.local.Yn 4)
(unify.nil)
(put.Ai.list 1)
(unify.local.Yn 3)
(unify.value.Xn 2)
(put.Ai.list 3)
(unify.local.Yn 2)
(unify.value.Xn 1)
(put.Ai.symbol 2 %[WARNING%:% Singleton% variables%,% clause% %~d% of% %~w%/%~w%:% )
(put.Ai.symbol 1 user)
(call 4 format 3 format)
(put.Ai.value.Yn 1 1)
(call 3 list←elements 1 si)
(put.Ai.nil 3)
(put.Ai.symbol 2 %]%~n)
(put.Ai.symbol 1 user)
(depart format 3 format)
)
(ASSEMBLE.CLAUSE ( style←check←single←vars 4 si ) 1
(proceed)
)
(ASSEMBLE.CLAUSE ( list←elements 1 si ) 4
(get.Ai.constant 1 NIL)
(proceed)
)
(ASSEMBLE.CLAUSE ( list←elements 1 si ) 11
(get.Ai.list 1)
(unify.variable.Xn 1)
(allocate)
(unify.variable.Yn 1)
(call 4 print←variable←name 1 si)
(put.Ai.value.Yn 1 1)
(depart list←elements1 1 si)
)
(ASSEMBLE.CLAUSE ( list←elements1 1 si ) 4
(get.Ai.constant 1 NIL)
(proceed)
)
(ASSEMBLE.CLAUSE ( list←elements1 1 si ) 18
(get.Ai.list 1)
(allocate)
(unify.variable.Yn 2)
(unify.variable.Yn 1)
(put.Ai.symbol 1 %,% )
(call 5 write 1 si)
(put.Ai.value.Yn 1 2)
(call 4 print←variable←name 1 si)
(put.Ai.value.Yn 1 1)
(depart list←elements1 1 si)
)
(ASSEMBLE.CLAUSE ( style←check←discontiguous 1 si ) 67
(allocate)
(get.Ai.variable.Yn 1 3)
(put.Ai.constant 2 1)
(put.Ai.symbol 1 QP%.STYLE%.DISCONTIGUOUS)
(call 7 gettopval 2 si)
(put.Ai.value.Yn 1 3)
(call 7 has←clauses 1 si)
(load.choice.point)
(store.variable.Yn 4)
(either 7 36)
(put.Ai.symbol 3 si)
(put.Ai.void 2)
(put.Ai.structure 1 is←discontiguous 1)
(unify.local.Yn 3)
(call 7 clause←module 3 si)
(load.value.Yn 4)
(cut.to.choice.point)
(fail)
;36
(or.finally)
;37
(body.cut)
(put.Ai.symbol 2 si)
(put.Ai.structure 1 is←discontiguous 1)
(unify.local.Yn 3)
(call 6 assert←module 2 si)
(put.Ai.void 4)
(put.Ai.variable.Yn 3 2)
(put.Ai.variable.Yn 2 1)
(put.Ai.value.Yn 1 3)
(call 5 procedure 4 si)
(put.Ai.list 1)
(unify.local.Yn 2)
(unify.nil)
(put.Ai.list 3)
(unify.local.Yn 1)
(unify.value.Xn 1)
(put.Ai.symbol 2 %[WARNING%:% Clauses% for% %~w%/%~w% are% not% together% in% the% source% file%]%~n)
(put.Ai.symbol 1 user)
(depart format 3 format)
)
(ASSEMBLE.CLAUSE ( style←check←discontiguous 1 si ) 1
(proceed)
)
(ASSEMBLE.CLAUSE ( style←check←multiple 1 si ) 10
(allocate)
(put.Ai.constant 2 0)
(put.Ai.symbol 1 QP%.STYLE%.MULTIPLE)
(call 3 gettopval 2 si)
(depart.cut)
)
(ASSEMBLE.CLAUSE ( style←check←multiple 1 si ) 10
(allocate)
(put.Ai.symbol 3 si)
(put.Ai.void 2)
(put.Ai.symbol 1 multi←style←checking←off)
(call 3 clause←module 3 si)
(depart.cut)
)
(ASSEMBLE.CLAUSE ( style←check←multiple 1 si ) 22
(allocate)
(get.Ai.variable.Yn 1 1)
(put.Ai.variable.Yn 3 2)
(put.Ai.constant 2 13)
(put.Ai.value.Yn 1 1)
(call 5 get←proc←word 3 si)
(load.value.Yn 2)
(load.pos.word 6)
(right.shift)
(store.variable.Xn 1)
(put.Ai.value.Yn 2 1)
(depart style←check←multiple1 2 si)
)
(ASSEMBLE.CLAUSE ( style←check←multiple1 2 si ) 4
(get.Ai.constant 1 0)
(cut.proceed)
)
(ASSEMBLE.CLAUSE ( style←check←multiple1 2 si ) 9
(allocate)
(put.Ai.value.Xn 2 1)
(put.Ai.symbol 1 QP%.FILE%.INDEX)
(call 3 gettopval 2 si)
(depart.cut)
)
(ASSEMBLE.CLAUSE ( style←check←multiple1 2 si ) 107
(allocate)
(get.Ai.variable.Yn 1 9)
(get.Ai.variable.Yn 2 2)
(put.Ai.variable.Yn 2 8)
(put.Ai.symbol 1 QP%.FILE%.INDEX)
(call 12 gettopval 2 si)
(put.Ai.value.Yn 2 9)
(put.Ai.variable.Yn 1 5)
(call 11 source←file←table 2 si)
(put.Ai.unsafe.Yn 2 8)
(put.Ai.variable.Yn 1 4)
(call 10 source←file←table 2 si)
(put.Ai.void 4)
(put.Ai.variable.Yn 3 7)
(put.Ai.variable.Yn 2 6)
(put.Ai.value.Yn 1 2)
(call 10 procedure 4 si)
(put.Ai.list 1)
(unify.local.Yn 7)
(unify.nil)
(put.Ai.list 3)
(unify.local.Yn 6)
(unify.value.Xn 1)
(put.Ai.symbol 2 %~nProcedure% %~q%/%~w% is% being% redefined% %-% )
(put.Ai.symbol 1 user)
(call 8 format 3 format)
(put.Ai.list 3)
(unify.local.Yn 5)
(unify.nil)
(put.Ai.symbol 2 %~n% % Previous% File%:% %~w)
(put.Ai.symbol 1 user)
(call 7 format 3 format)
(put.Ai.list 3)
(unify.local.Yn 4)
(unify.nil)
(put.Ai.symbol 2 %~n% % New% File%:% % % % % % %~w)
(put.Ai.symbol 1 user)
(call 6 format 3 format)
(put.Ai.nil 3)
(put.Ai.symbol 2 %~nDo% you% really% want% to% redefine% it%?% )
(put.Ai.symbol 1 user)
(call 6 format 3 format)
(call 6 repeat 0 si)
(put.Ai.nil 3)
(put.Ai.symbol 2 %(y%,% n%,% p%,% or% %?%)% )
(put.Ai.symbol 1 user)
(call 6 format 3 format)
(put.Ai.variable.Yn 1 3)
(call 6 ttyeol←get 1 si)
(put.Ai.variable.Yn 2 1)
(put.Ai.unsafe.Yn 1 3)
(call 5 mult←ans 2 si)
(body.cut)
(put.Ai.value.Yn 2 2)
(put.Ai.unsafe.Yn 1 1)
(depart process←ans 2 si)
)
(ASSEMBLE.CLAUSE ( mult←ans 2 si ) 6
(get.Ai.constant 1 121)
(get.Ai.symbol 2 yes)
(cut.proceed)
)
(ASSEMBLE.CLAUSE ( mult←ans 2 si ) 6
(get.Ai.constant 1 89)
(get.Ai.symbol 2 yes)
(cut.proceed)
)
(ASSEMBLE.CLAUSE ( mult←ans 2 si ) 6
(get.Ai.constant 1 110)
(get.Ai.symbol 2 no)
(cut.proceed)
)
(ASSEMBLE.CLAUSE ( mult←ans 2 si ) 6
(get.Ai.constant 1 78)
(get.Ai.symbol 2 no)
(cut.proceed)
)
(ASSEMBLE.CLAUSE ( mult←ans 2 si ) 6
(get.Ai.constant 1 112)
(get.Ai.symbol 2 proceed)
(cut.proceed)
)
(ASSEMBLE.CLAUSE ( mult←ans 2 si ) 6
(get.Ai.constant 1 80)
(get.Ai.symbol 2 proceed)
(cut.proceed)
)
(ASSEMBLE.CLAUSE ( mult←ans 2 si ) 38
(get.Ai.constant 1 63)
(head.cut)
(allocate)
(put.Ai.nil 3)
(put.Ai.symbol 2 %~n% % % % % % % y% % % % redefine% this% particular% procedure%.%~n)
(put.Ai.symbol 1 user)
(call 3 format 3 format)
(put.Ai.nil 3)
(put.Ai.symbol 2 % % % % % % % n% % % % don%'t% redefine% this% procedure%,% but% continue% loading%.%~n)
(put.Ai.symbol 1 user)
(call 3 format 3 format)
(put.Ai.nil 3)
(put.Ai.symbol 2 % % % % % % % p% % % % proceed% redefining% and% suppress% further% warnings%.%~n)
(put.Ai.symbol 1 user)
(call 3 format 3 format)
(put.Ai.nil 3)
(put.Ai.symbol 2 % % % % % % % %?% % % % print% this% information%.%~2n)
(put.Ai.symbol 1 user)
(call 3 format 3 format)
(fail)
)
(ASSEMBLE.CLAUSE ( process←ans 2 si ) 4
(get.Ai.constant 1 yes)
(proceed)
)
(ASSEMBLE.CLAUSE ( process←ans 2 si ) 9
(get.Ai.constant 1 proceed)
(put.Ai.symbol 2 si)
(put.Ai.symbol 1 multi←style←checking←off)
(execute assertz←module 2 si)
)
(ASSEMBLE.CLAUSE ( process←ans 2 si ) 16
(get.Ai.constant 1 no)
(put.Ai.value.Xn 3 2)
(allocate)
(put.Ai.symbol 2 si)
(put.Ai.structure 1 dont←load←procedure 1)
(unify.local.Xn 3)
(call 3 assertz←module 2 si)
(fail)
)
(ASSEMBLE.CLAUSE ( style←check 1 si ) 4
(allocate)
(is.a 1)
(body.cut)
(fail)
)
(ASSEMBLE.CLAUSE ( style←check 1 si ) 27
(get.Ai.constant 1 all)
(allocate)
(put.Ai.constant 2 1)
(put.Ai.symbol 1 QP%.STYLE%.SINGLE)
(call 3 settopval 2 si)
(put.Ai.constant 2 1)
(put.Ai.symbol 1 QP%.STYLE%.DISCONTIGUOUS)
(call 3 settopval 2 si)
(put.Ai.constant 2 1)
(put.Ai.symbol 1 QP%.STYLE%.MULTIPLE)
(depart settopval 2 si)
)
(ASSEMBLE.CLAUSE ( style←check 1 si ) 10
(get.Ai.constant 1 single←var)
(put.Ai.constant 2 1)
(put.Ai.symbol 1 QP%.STYLE%.SINGLE)
(execute settopval 2 si)
)
(ASSEMBLE.CLAUSE ( style←check 1 si ) 10
(get.Ai.constant 1 discontiguous)
(put.Ai.constant 2 1)
(put.Ai.symbol 1 QP%.STYLE%.DISCONTIGUOUS)
(execute settopval 2 si)
)
(ASSEMBLE.CLAUSE ( style←check 1 si ) 10
(get.Ai.constant 1 multiple)
(put.Ai.constant 2 1)
(put.Ai.symbol 1 QP%.STYLE%.MULTIPLE)
(execute settopval 2 si)
)
(ASSEMBLE.CLAUSE ( no←style←check 1 si ) 4
(allocate)
(is.a 1)
(body.cut)
(fail)
)
(ASSEMBLE.CLAUSE ( no←style←check 1 si ) 27
(get.Ai.constant 1 all)
(allocate)
(put.Ai.constant 2 0)
(put.Ai.symbol 1 QP%.STYLE%.SINGLE)
(call 3 settopval 2 si)
(put.Ai.constant 2 0)
(put.Ai.symbol 1 QP%.STYLE%.DISCONTIGUOUS)
(call 3 settopval 2 si)
(put.Ai.constant 2 0)
(put.Ai.symbol 1 QP%.STYLE%.MULTIPLE)
(depart settopval 2 si)
)
(ASSEMBLE.CLAUSE ( no←style←check 1 si ) 10
(get.Ai.constant 1 single←var)
(put.Ai.constant 2 0)
(put.Ai.symbol 1 QP%.STYLE%.SINGLE)
(execute settopval 2 si)
)
(ASSEMBLE.CLAUSE ( no←style←check 1 si ) 10
(get.Ai.constant 1 discontiguous)
(put.Ai.constant 2 0)
(put.Ai.symbol 1 QP%.STYLE%.DISCONTIGUOUS)
(execute settopval 2 si)
)
(ASSEMBLE.CLAUSE ( no←style←check 1 si ) 10
(get.Ai.constant 1 multiple)
(put.Ai.constant 2 0)
(put.Ai.symbol 1 QP%.STYLE%.MULTIPLE)
(execute settopval 2 si)
)
STOP