(loader '((title |defs.lo|)))
(if (not (>= (version) 15.2)) (progn (error 'load 'erricf 'defs)))
(defvar #:sys-package:colon 'system)
(defvar #:system:redef-flag t)
(loader'((fentry macroexpand subr1)
(entry macroexpand subr1)
(push a1)
(btcons a1 101)
(adjstk '1)
(return)
101
(bfsymb (car a1) 103)
(mov (car a1) a1)
(jcall typefn)
(cabne a1 'macro 105)
(push (@ 107))
(mov (& 1) a1)
(mov (car a1) a1)
(jcall valfn)
(mov a1 a2)
(mov 'lambda a1)
(jcall cons)
(push a1)
(push (& 2))
(mov '2 a4)
(jmp apply)
107
(eval ())
(adjstk '1)
(jmp macroexpand)
105
(mov (& 0) a1)
(mov (car a1) a1)
(jcall typefn)
(cabne a1 'dmacro 108)
(push (@ 110))
(mov (& 1) a1)
(mov (car a1) a1)
(jcall valfn)
(mov a1 a2)
(mov 'lambda a1)
(jcall cons)
(push a1)
(mov (& 2) a4)
(push (cdr a4))
(mov '2 a4)
(jmp apply)
110
(eval ())
(adjstk '1)
(jmp macroexpand)
108
(mov (& 0) a1)
(mov (car a1) a1)
(jcall typefn)
(cabne a1 'msubr 111)
(push (@ 113))
(mov (& 1) a1)
(mov (car a1) a1)
(jcall valfn)
(push a1)
(push (& 2))
(push nil)
(push nil)
(mov '4 a4)
(jmp call)
113
(eval ())
(adjstk '1)
(jmp macroexpand)
111
(mov (& 0) a1)
(mov (car a1) a1)
(jcall typefn)
(cabne a1 'dmsubr 114)
(push (@ 116))
(mov (& 1) a1)
(mov (car a1) a1)
(jcall valfn)
(push a1)
(mov (& 2) a4)
(push (cdr a4))
(push nil)
(push nil)
(mov '4 a4)
(jmp call)
116
(eval ())
(adjstk '1)
(jmp macroexpand)
114
(mov (& 0) a4)
(cabne (car a4) 'quote 117)
(mov a4 a1)
(adjstk '1)
(return)
117
(push nil)
119
(bfcons (& 1) 120)
(mov (& 1) a1)
(mov (cdr a1) (& 1))
(mov (car a1) a1)
(jcall macroexpand)
(mov (& 0) a2)
(jcall cons)
(mov a1 (& 0))
(bra 119)
120
(mov (& 0) a1)
(jcall nreverse)
(mov (& 0) a4)
(mov (& 1) (cdr a4))
(adjstk '2)
(return)
103
(push nil)
121
(bfcons (& 1) 122)
(mov (& 1) a1)
(mov (cdr a1) (& 1))
(mov (car a1) a1)
(jcall macroexpand)
(mov (& 0) a2)
(jcall cons)
(mov a1 (& 0))
(bra 121)
122
(mov (& 0) a1)
(jcall nreverse)
(mov (& 0) a4)
(mov (& 1) (cdr a4))
(adjstk '2)
(return)
))
(loader'((fentry macroexpand1 subr1)
(entry macroexpand1 subr1)
(push a1)
(mov (car a1) a1)
(jcall typefn)
(cabne a1 'macro 101)
(push (@ 103))
(mov (& 1) a1)
(mov (car a1) a1)
(jcall valfn)
(mov a1 a2)
(mov 'lambda a1)
(jcall cons)
(push a1)
(push (& 2))
(mov '2 a4)
(jmp apply)
103
(eval ())
(adjstk '1)
(return)
101
(mov (& 0) a1)
(mov (car a1) a1)
(jcall typefn)
(cabne a1 'dmacro 104)
(push (@ 106))
(mov (& 1) a1)
(mov (car a1) a1)
(jcall valfn)
(mov a1 a2)
(mov 'lambda a1)
(jcall cons)
(push a1)
(mov (& 2) a4)
(push (cdr a4))
(mov '2 a4)
(jmp apply)
106
(eval ())
(adjstk '1)
(return)
104
(mov (& 0) a1)
(mov (car a1) a1)
(jcall typefn)
(cabne a1 'msubr 107)
(push (@ 109))
(mov (& 1) a1)
(mov (car a1) a1)
(jcall valfn)
(push a1)
(push (& 2))
(push nil)
(push nil)
(mov '4 a4)
(jmp call)
109
(eval ())
(adjstk '1)
(return)
107
(mov (& 0) a1)
(mov (car a1) a1)
(jcall typefn)
(cabne a1 'dmsubr 110)
(push (@ 112))
(mov (& 1) a1)
(mov (car a1) a1)
(jcall valfn)
(push a1)
(mov (& 2) a4)
(push (cdr a4))
(push nil)
(push nil)
(mov '4 a4)
(jmp call)
112
(eval ())
(adjstk '1)
(return)
110
(mov (& 0) a1)
(adjstk '1)
(return)
))
(loader'((fentry with dmsubr)
(entry with dmsubr)
(mov (cdr a1) a4)
(mov (car a1) a1)
(push a1)
(push a4)
(push '-1)
(push a1)
(push nil)
101
(bfcons (& 1) 102)
(mov (& 1) a4)
(mov (cdr a4) (& 1))
(push (car a4))
(push (@ 103))
(push '"arg")
(mov (& 5) a1)
(jcall 1+)
(mov a1 (& 5))
(push a1)
(mov '2 a4)
(jmp concat)
103
(eval ())
(mov a1 a2)
(mov 'with a1)
(jcall symbol)
(adjstk '1)
(mov (& 0) a2)
(jcall cons)
(mov a1 (& 0))
(bra 101)
102
(mov (& 0) a1)
(jcall nreverse)
(adjstk '3)
(push a1)
(push (@ 104))
(push 'let)
(push (& 4))
(push a1)
(push nil)
105
(bfcons (& 1) 106)
(bfcons (& 2) 106)
(mov (& 1) a4)
(mov (cdr a4) (& 1))
(mov (& 2) a3)
(mov (cdr a3) (& 2))
(push (car a4))
(push (car a3))
(push (@ 107))
(push (& 2))
(mov (& 2) a1)
(jcall length)
(jcall 1-)
(mov (& 2) a2)
(jcall firstn)
(jcall consp)
(mov a1 a4)
(bfnil a4 108)
(mov (& 2) a3)
(mov 'errsxt a2)
(mov 'with a1)
(jcall error)
(mov a1 a4)
108
(push a4)
(mov '2 a4)
(jmp list)
107
(eval ())
(adjstk '2)
(mov (& 0) a2)
(jcall cons)
(mov a1 (& 0))
(bra 105)
106
(mov (& 0) a1)
(jcall nreverse)
(adjstk '3)
(push a1)
(push (@ 109))
(push 'protect)
(push (@ 110))
(push (& 8))
(push (& 8))
(mov '2 a4)
(jmp append)
110
(eval ())
(mov a1 a2)
(mov 'progn a1)
(jcall cons)
(push a1)
(mov (& 6) a1)
(jcall nreverse)
(push a1)
(mov (& 9) a1)
(jcall reverse)
(push a1)
(push nil)
111
(bfcons (& 2) 112)
(bfcons (& 1) 112)
(mov (& 2) a4)
(mov (cdr a4) (& 2))
(mov (& 1) a3)
(mov (cdr a3) (& 1))
(push (car a4))
(push (car a3))
(mov (& 0) a1)
(jcall length)
(jcall 1-)
(mov (& 0) a2)
(jcall firstn)
(mov (& 1) a2)
(jcall append1)
(adjstk '2)
(mov (& 0) a2)
(jcall cons)
(mov a1 (& 0))
(bra 111)
112
(mov (& 0) a1)
(jcall nreverse)
(adjstk '3)
(push a1)
(mov '3 a4)
(jmp mcons)
109
(eval ())
(push a1)
(mov '3 a4)
(jmp list)
104
(eval ())
(adjstk '3)
(return)
))
(loader'((entry #:system:def-check-all subr2)
(push a2)
(push a1)
(btcons (cdr a1) 102)
(push a2)
(mov (cdr a1) a3)
(mov 'errnla a2)
(pop a1)
(jcall error)
102
(mov (& 0) a4)
(mov (cdr a4) a3)
(push (car a4))
(push (car a3))
(btvar (& 1) 104)
(mov (& 1) a3)
(mov 'errbdf a2)
(mov (& 3) a1)
(jcall error)
104
(mov nil a3)
(mov (& 1) a2)
(mov (& 0) a1)
(call #:system:def-check-larg)
(bfnil (cvalq #:system:redef-flag) 106)
(mov (& 1) a1)
(jcall typefn)
(btnil a1 106)
(mov (& 1) a3)
(mov '"fonction redefinie" a2)
(mov (& 3) a1)
(jcall printerror)
106
(mov (cvalq #:trace:trace) a2)
(mov (& 1) a1)
(jcall memq)
(btnil a1 108)
(push (@ 109))
(push (@ 110))
(push 'untrace)
(push (& 4))
(mov '2 a4)
(jmp list)
110
(eval ())
(push a1)
(mov '1 a4)
(jmp eval)
109
(eval ())
108
(btnil (cvalq #:system:previous-def-flag) 112)
(mov (& 1) a1)
(jcall typefn)
(btnil a1 112)
(mov (& 1) a1)
(jcall getdef)
(mov '#:system:previous-def a3)
(mov a1 a2)
(mov (& 1) a1)
(jcall putprop)
112
(btnil (cvalq #:system:loaded-from-file) 113)
(mov '#:system:loaded-from-file a3)
(mov (cvalq #:system:loaded-from-file) a2)
(mov (& 1) a1)
(adjstk '4)
(jmp putprop)
113
(mov nil a1)
(adjstk '4)
(return)
))
(loader'((entry #:system:def-check-larg subr3)
(push (cvalq lpar))
(mov a3 (cvalq lpar))
(push '1)
(push '(lpar))
(push (@ #:system:def-check-larg))
(push llink)
(mov nil llink)
(push dlink)
(push cbindn)
(stack dlink)
(call #:system:def-check-larg-aux)
(mov (& 1) dlink)
(mov (& 2) llink)
(mov (& 6) (cvalq lpar))
(adjstk '7)
(return)
))
(loader'((entry #:system:def-check-larg-aux subr2)
(push a2)
(push a1)
(bfnil a1 101)
(mov 't a1)
(adjstk '2)
(return)
101
(bfvar a1 103)
(mov (cvalq lpar) a2)
(jcall memq)
(btnil a1 105)
(mov (& 0) a3)
(mov 'errbpa a2)
(mov (& 1) a1)
(adjstk '2)
(jmp error)
105
(mov (cvalq lpar) a2)
(mov (& 0) a1)
(jcall cons)
(mov a1 (cvalq lpar))
(adjstk '2)
(return)
103
(bfcons a1 107)
(mov (car a1) a1)
(call #:system:def-check-larg-aux)
(btnil a1 109)
(mov (& 0) a1)
(mov (& 1) a2)
(mov (cdr a1) a1)
(call #:system:def-check-larg-aux)
(btnil a1 109)
(mov 't a1)
(adjstk '2)
(return)
109
(mov nil a1)
(adjstk '2)
(return)
107
(push a2)
(mov a1 a3)
(mov 'errbpa a2)
(pop a1)
(adjstk '2)
(jmp error)
))
(loader'((entry #:system:resetfn subr3)
(push a3)
(push a2)
(push nil)
(push (@ 101))
(push 'fentry)
(push a1)
(push a2)
(mov '3 a4)
(jmp list)
101
(eval ())
(mov (& 0) a2)
(jcall cons)
(mov a1 (& 0))
(cabne (& 1) 'fsubr 103)
(push (@ 104))
(push 'push)
(push (@ 105))
(push 'quote)
(push (& 6))
(mov '2 a4)
(jmp list)
105
(eval ())
(push a1)
(mov '2 a4)
(jmp list)
104
(eval ())
(mov (& 0) a2)
(jcall cons)
(mov a1 (& 0))
103
(mov (& 1) a4)
(cabeq a4 'subr1 108)
(cabeq a4 'subr2 108)
(cabeq a4 'subr3 108)
(cabne a4 'fsubr 107)
108
(mov a1 a2)
(mov '(push a1) a1)
(jcall cons)
(mov a1 (& 0))
107
(mov (& 1) a4)
(cabeq a4 'subr2 111)
(cabne a4 'subr3 110)
111
(mov a1 a2)
(mov '(push a2) a1)
(jcall cons)
(mov a1 (& 0))
110
(cabne (& 1) 'subr3 113)
(mov a1 a2)
(mov '(push a3) a1)
(jcall cons)
(mov a1 (& 0))
113
(cabeq (& 1) 'fsubr 115)
(push (@ 116))
(push 'mov)
(push (@ 117))
(push 'quote)
(push (& 6))
(mov '2 a4)
(jmp list)
117
(eval ())
(push a1)
(push '(a1))
(mov '3 a4)
(jmp mcons)
116
(eval ())
(mov (& 0) a2)
(jcall cons)
(mov a1 (& 0))
115
(cabeq (& 1) 'nsubr 119)
(push (@ 120))
(push 'mov)
(push (@ 121))
(push 'quote)
(mov (& 5) a1)
(cabne a1 'subr0 123)
(mov '0 a4)
(bra 122)
123
(cabne a1 'subr1 124)
(mov '1 a4)
(bra 122)
124
(cabne a1 'subr2 125)
(mov '2 a4)
(bra 122)
125
(cabne a1 'subr3 126)
(mov '3 a4)
(bra 122)
126
(cabne a1 'fsubr 127)
(mov '2 a4)
(bra 122)
127
(mov nil a4)
122
(push a4)
(mov '2 a4)
(jmp list)
121
(eval ())
(push a1)
(push '(a4))
(mov '3 a4)
(jmp mcons)
120
(eval ())
(mov (& 0) a2)
(jcall cons)
(mov a1 (& 0))
119
(cabne (& 1) 'fsubr 128)
(mov a1 a2)
(mov '(jmp apply) a1)
(jcall cons)
(mov a1 (& 0))
(bra 129)
128
(mov a1 a2)
(mov '(jmp #:llcp:ffuncall) a1)
(jcall cons)
(mov a1 (& 0))
129
(mov a1 a2)
(mov '(end) a1)
(jcall cons)
(mov a1 (& 0))
(push (@ 130))
(jcall nreverse)
(push a1)
(push nil)
(mov '2 a4)
(jmp loader)
130
(eval ())
(adjstk '3)
(return)
))
(loader'((fentry resetfn subr3)
(entry resetfn subr3)
(push a3)
(push a2)
(push a1)
(jcall typefn)
(push a1)
(mov a1 a4)
(cabeq a4 'subr0 103)
(cabeq a4 'subr1 103)
(cabeq a4 'subr2 103)
(cabeq a4 'subr3 103)
(cabeq a4 'nsubr 103)
(cabne a4 'fsubr 101)
103
(mov 'loader a1)
(jcall featurep)
(btnil a1 101)
(mov (& 2) a2)
(mov (& 0) a1)
(jcall eq)
(bfnil a1 102)
(cabne 'expr (& 2) 105)
(mov (& 0) a1)
(cabne a1 'subr0 108)
(mov (& 3) a4)
(btnil (car a4) 109)
(mov nil a4)
(bra 107)
109
(mov 't a4)
(bra 107)
108
(cabne a1 'subr1 111)
(mov (& 3) a1)
(mov (car a1) a1)
(jcall consp)
(mov a1 a4)
(btnil a4 107)
(mov (& 3) a4)
(mov (car a4) a4)
(btnil (cdr a4) 113)
(mov nil a4)
(bra 107)
113
(mov 't a4)
(bra 107)
111
(cabne a1 'subr2 115)
(mov (& 3) a1)
(mov (car a1) a1)
(jcall consp)
(mov a1 a4)
(btnil a4 107)
(mov (& 3) a1)
(mov (car a1) a1)
(mov (cdr a1) a1)
(jcall consp)
(mov a1 a4)
(btnil a4 107)
(mov (& 3) a4)
(mov (car a4) a4)
(mov (cdr a4) a4)
(btnil (cdr a4) 117)
(mov nil a4)
(bra 107)
117
(mov 't a4)
(bra 107)
115
(cabne a1 'subr3 119)
(mov (& 3) a1)
(mov (car a1) a1)
(jcall consp)
(mov a1 a4)
(btnil a4 107)
(mov (& 3) a1)
(mov (car a1) a1)
(mov (cdr a1) a1)
(jcall consp)
(mov a1 a4)
(btnil a4 107)
(mov (& 3) a1)
(mov (car a1) a1)
(mov (cdr a1) a1)
(mov (cdr a1) a1)
(jcall consp)
(mov a1 a4)
(btnil a4 107)
(mov (& 3) a4)
(mov (car a4) a4)
(mov (cdr a4) a4)
(mov (cdr a4) a4)
(btnil (cdr a4) 121)
(mov nil a4)
(bra 107)
121
(mov 't a4)
(bra 107)
119
(cabne a1 'nsubr 123)
(mov (& 3) a1)
(mov (car a1) a1)
(jcall variablep)
(mov a1 a4)
(bfnil a4 107)
(mov (& 3) a1)
(mov (car a1) a1)
(jcall last)
(mov (cdr a1) a1)
(jcall variablep)
(mov a1 a4)
(bfnil a4 107)
(mov (& 3) a1)
(mov (car a1) a1)
(jcall length)
(mov '4 a2)
(jcall ge)
(mov a1 a4)
(bra 107)
123
(mov nil a4)
107
(btnil a4 105)
(mov (& 3) a2)
(mov 'lambda a1)
(jcall cons)
(mov a1 a3)
(mov (& 0) a2)
(mov '#:system:bidon a1)
(call #:system:resetfn)
(mov '#:system:bidon a1)
(jcall typefn)
(push a1)
(mov '#:system:bidon a1)
(jcall valfn)
(mov a1 a3)
(pop a2)
(mov (& 1) a1)
(jcall setfn)
(mov (& 3) a2)
(mov (& 2) a1)
(jcall cons)
(mov 'resetfn a3)
(mov a1 a2)
(mov (& 1) a1)
(jcall putprop)
(bra 102)
105
(cabne 'fexpr (& 2) 125)
(cabne 'fsubr (& 0) 125)
(mov (& 3) a2)
(mov 'flambda a1)
(jcall cons)
(mov a1 a3)
(mov (& 0) a2)
(mov (& 1) a1)
(call #:system:resetfn)
(mov (& 3) a2)
(mov (& 2) a1)
(jcall cons)
(mov 'resetfn a3)
(mov a1 a2)
(mov (& 1) a1)
(jcall putprop)
(bra 102)
125
(bfnil (cvalq #:system:redef-flag) 128)
(mov 'autoload a2)
(mov (& 1) a1)
(jcall getprop)
(bfnil a1 128)
(mov (& 1) a3)
(mov '"fonction incompatible" a2)
(mov 'resetfn a1)
(jcall printerror)
128
(mov (& 3) a3)
(mov (& 2) a2)
(mov (& 1) a1)
(jcall setfn)
(bra 102)
101
(mov (& 3) a3)
(mov (& 2) a2)
(mov (& 1) a1)
(jcall setfn)
(mov 'compiler a1)
(jcall featurep)
(btnil a1 102)
(mov (& 1) a1)
(jcall macro-openp)
(btnil a1 102)
(mov (& 1) a1)
(jcall remove-macro-open)
102
(adjstk '1)
(mov (& 0) a1)
(adjstk '3)
(return)
))
(loader'((fentry de fsubr)
(entry de fsubr)
(push a1)
(mov 'de a2)
(call #:system:def-check-all)
(mov (& 0) a1)
(mov (cdr a1) a3)
(mov 'expr a2)
(mov (car a1) a1)
(adjstk '1)
(jmp resetfn)
))
(loader'((fentry df fsubr)
(entry df fsubr)
(push a1)
(mov 'df a2)
(call #:system:def-check-all)
(mov (& 0) a1)
(mov (cdr a1) a3)
(mov 'fexpr a2)
(mov (car a1) a1)
(adjstk '1)
(jmp resetfn)
))
(loader'((fentry dm fsubr)
(entry dm fsubr)
(push a1)
(mov 'dm a2)
(call #:system:def-check-all)
(mov (& 0) a1)
(mov (cdr a1) a3)
(mov 'macro a2)
(mov (car a1) a1)
(adjstk '1)
(jmp setfn)
))
(loader'((fentry dmd fsubr)
(entry dmd fsubr)
(push a1)
(mov 'dmd a2)
(call #:system:def-check-all)
(mov (& 0) a1)
(mov (cdr a1) a3)
(mov 'dmacro a2)
(mov (car a1) a1)
(adjstk '1)
(jmp setfn)
))
(loader'((fentry defmacro fsubr)
(entry defmacro fsubr)
(push a1)
(mov 'defmacro a2)
(call #:system:def-check-all)
(mov (& 0) a1)
(mov (cdr a1) a3)
(mov 'dmacro a2)
(mov (car a1) a1)
(adjstk '1)
(jmp setfn)
))
(loader'((fentry defun fsubr)
(entry defun fsubr)
(push a1)
(mov 'defun a2)
(call #:system:def-check-all)
(mov (& 0) a1)
(mov (cdr a1) a3)
(mov 'expr a2)
(mov (car a1) a1)
(adjstk '1)
(jmp resetfn)
))
(loader'((fentry ds fsubr)
(entry ds fsubr)
(push a1)
(mov 'ds a2)
(call #:system:def-check-all)
(mov (& 0) a1)
(mov (cdr a1) a2)
(mov (cdr a1) a3)
(mov (cdr a3) a3)
(mov (car a3) a3)
(mov (car a2) a2)
(mov (car a1) a1)
(adjstk '1)
(jmp setfn)
))
(loader'((fentry letn dmsubr)
(entry letn dmsubr)
(mov (cdr a1) a4)
(mov (car a1) a1)
(push a1)
(mov (cdr a4) a3)
(mov (car a4) a4)
(push a4)
(push a3)
(push (@ 101))
(push 'flet)
(push (@ 102))
(push (@ 103))
(push a1)
(push a4)
(push nil)
104
(bfcons (& 1) 105)
(mov (& 1) a1)
(mov (cdr a1) (& 1))
(mov (car a1) a1)
(mov (& 0) a2)
(mov (car a1) a1)
(jcall cons)
(mov a1 (& 0))
(bra 104)
105
(mov (& 0) a1)
(jcall nreverse)
(adjstk '2)
(push a1)
(push (& 6))
(mov '3 a4)
(jmp mcons)
103
(eval ())
(push a1)
(mov '1 a4)
(jmp list)
102
(eval ())
(push a1)
(push (& 4))
(push nil)
106
(bfcons (& 1) 107)
(mov (& 1) a1)
(mov (cdr a1) (& 1))
(mov (car a1) a1)
(mov (cdr a1) a1)
(mov (& 0) a2)
(mov (car a1) a1)
(jcall cons)
(mov a1 (& 0))
(bra 106)
107
(mov (& 0) a1)
(jcall nreverse)
(adjstk '2)
(mov a1 a2)
(mov (& 5) a1)
(jcall cons)
(push a1)
(mov '3 a4)
(jmp list)
101
(eval ())
(adjstk '3)
(return)
))
(loader'((fentry slet dmsubr)
(entry slet dmsubr)
(mov (cdr a1) a4)
(mov (car a1) a1)
(push a1)
(push a4)
(bfnil a1 101)
(push (@ 103))
(push 'let)
(push nil)
(push a4)
(mov '3 a4)
(jmp mcons)
103
(eval ())
(adjstk '2)
(return)
101
(btnil (cdr a1) 104)
(push (@ 106))
(push 'let)
(push (@ 107))
(push (car a1))
(mov '1 a4)
(jmp list)
107
(eval ())
(push a1)
(push (@ 108))
(push 'lets)
(mov (& 6) a4)
(push (cdr a4))
(push (& 6))
(mov '3 a4)
(jmp mcons)
108
(eval ())
(push a1)
(mov '3 a4)
(jmp list)
106
(eval ())
(adjstk '2)
(return)
104
(push (@ 109))
(push 'let)
(push (@ 110))
(push (car a1))
(mov '1 a4)
(jmp list)
110
(eval ())
(push a1)
(push (& 3))
(mov '3 a4)
(jmp mcons)
109
(eval ())
(adjstk '2)
(return)
))
(synonym 'lets 'slet)
(synonym 'let* 'slet)
(synonym 'dynamic-let 'let)
(loader'((fentry dynamic fsubr)
(entry dynamic fsubr)
(mov (car a1) a1)
(mov (cval a1) a1)
(return)
))
(loader'((entry #:system:generate-for subr2)
(push a2)
(push a1)
(push (@ 101))
(push 'let)
(push (@ 102))
(push (cvalq #:system:var))
(push (cvalq init))
(mov '2 a4)
(jmp list)
102
(eval ())
(push a1)
(push (@ 103))
(btnil (& 4) 104)
(push (@ 106))
(push (@ 107))
(push (& 6))
(push (cvalq step))
(mov '2 a4)
(jmp list)
107
(eval ())
(push a1)
(mov '1 a4)
(jmp list)
106
(eval ())
(mov a1 a4)
(bra 105)
104
(mov (cvalq step) (& 4))
(mov nil a4)
105
(push a4)
(btnil (& 6) 108)
(push (@ 110))
(push (@ 111))
(push (& 8))
(push (cvalq end))
(mov '2 a4)
(jmp list)
111
(eval ())
(push a1)
(mov '1 a4)
(jmp list)
110
(eval ())
(mov a1 a4)
(bra 109)
108
(mov (cvalq end) (& 6))
(mov nil a4)
109
(push a4)
(mov '2 a4)
(jmp append)
103
(eval ())
(mov a1 a2)
(pop a1)
(jcall cons)
(push a1)
(push (@ 112))
(push 'cond)
(push (@ 113))
(push (@ 114))
(push '>)
(push (& 8))
(push '(0))
(mov '3 a4)
(jmp mcons)
114
(eval ())
(push a1)
(push (@ 115))
(push 'while)
(push (@ 116))
(push '<=)
(push (cvalq #:system:var))
(push (& 13))
(mov '3 a4)
(jmp list)
116
(eval ())
(push a1)
(push (@ 117))
(push (cvalq #:system:body))
(push (@ 118))
(push (@ 119))
(push 'incr)
(push (cvalq #:system:var))
(push (& 16))
(mov '3 a4)
(jmp list)
119
(eval ())
(push a1)
(mov '1 a4)
(jmp list)
118
(eval ())
(push a1)
(mov '2 a4)
(jmp append)
117
(eval ())
(push a1)
(mov '3 a4)
(jmp mcons)
115
(eval ())
(push a1)
(mov '2 a4)
(jmp list)
113
(eval ())
(push a1)
(push (@ 120))
(push (@ 121))
(push '<)
(push (& 9))
(push '(0))
(mov '3 a4)
(jmp mcons)
121
(eval ())
(push a1)
(push (@ 122))
(push 'while)
(push (@ 123))
(push '>=)
(push (cvalq #:system:var))
(push (& 14))
(mov '3 a4)
(jmp list)
123
(eval ())
(push a1)
(push (@ 124))
(push (cvalq #:system:body))
(push (@ 125))
(push (@ 126))
(push 'incr)
(push (cvalq #:system:var))
(push (& 17))
(mov '3 a4)
(jmp list)
126
(eval ())
(push a1)
(mov '1 a4)
(jmp list)
125
(eval ())
(push a1)
(mov '2 a4)
(jmp append)
124
(eval ())
(push a1)
(mov '3 a4)
(jmp mcons)
122
(eval ())
(push a1)
(mov '2 a4)
(jmp list)
120
(eval ())
(push a1)
(push '((t (error 'for "increment nul" 0))))
(mov '4 a4)
(jmp mcons)
112
(eval ())
(push a1)
(push (cvalq res))
(mov '4 a4)
(jmp mcons)
101
(eval ())
(adjstk '2)
(return)
))
(loader'((fentry for dmsubr)
(entry for dmsubr)
(mov (cdr a1) a4)
(mov (car a1) a1)
(mov (cdr a1) a3)
(mov (car a1) a1)
(mov (cdr a3) a2)
(mov (car a3) a3)
(push (cdr a2))
(mov (car a2) a2)
(push a4)
(mov (& 1) a4)
(mov (car a4) (& 1))
(mov (cdr a4) a4)
(push (cvalq #:system:var))
(mov a1 (cvalq #:system:var))
(push (cvalq init))
(mov a3 (cvalq init))
(push (cvalq step))
(mov a2 (cvalq step))
(push (cvalq #:system:body))
(mov (& 4) (cvalq #:system:body))
(push (cvalq res))
(mov a4 (cvalq res))
(push (cvalq end))
(mov (& 7) (cvalq end))
(push (cvalq end))
(mov (cvalq end) (cvalq end))
(push '7)
(push '(#:system:var init step #:system:body res end end))
(push (@ for))
(push llink)
(mov nil llink)
(push dlink)
(push cbindn)
(stack dlink)
(btvar a1 102)
(mov a1 a3)
(mov 'errnva a2)
(mov 'for a1)
(jcall error)
102
(btnil (cvalq init) 105)
(btnil (cvalq step) 105)
(bfnil (cvalq end) 104)
105
(push (@ 106))
(push (cvalq #:system:var))
(push (cvalq init))
(push (cvalq step))
(push (cvalq end))
(mov '4 a4)
(jmp list)
106
(eval ())
(mov a1 a3)
(mov 'errsxt a2)
(mov 'for a1)
(jcall error)
104
(mov (cvalq step) a1)
(jcall numberp)
(btnil a1 107)
(push (@ 111))
(push (cvalq step))
(push '0)
(mov '2 a4)
(jmp >)
111
(eval ())
(btnil a1 109)
(mov '<= a4)
(bra 110)
109
(push (@ 114))
(push (cvalq step))
(push '0)
(mov '2 a4)
(jmp <)
114
(eval ())
(btnil a1 112)
(mov '>= a4)
(bra 110)
112
(mov '0 a3)
(mov '"increment nul" a2)
(mov 'for a1)
(jcall error)
(mov a1 a4)
110
(push a4)
(mov (cvalq end) a1)
(jcall numberp)
(bfnil a1 117)
(bfsymb (cvalq end) 115)
117
(push (@ 118))
(push 'let)
(push (@ 119))
(push (@ 120))
(push (cvalq #:system:var))
(push (cvalq init))
(mov '2 a4)
(jmp list)
120
(eval ())
(push a1)
(mov '1 a4)
(jmp list)
119
(eval ())
(push a1)
(push (@ 121))
(push 'while)
(push (@ 122))
(push (& 6))
(push (cvalq #:system:var))
(push (cvalq end))
(mov '3 a4)
(jmp list)
122
(eval ())
(push a1)
(push (@ 123))
(push (cvalq #:system:body))
(push (@ 124))
(push (@ 125))
(push 'incr)
(push (cvalq #:system:var))
(push (cvalq step))
(mov '3 a4)
(jmp list)
125
(eval ())
(push a1)
(mov '1 a4)
(jmp list)
124
(eval ())
(push a1)
(mov '2 a4)
(jmp append)
123
(eval ())
(push a1)
(mov '3 a4)
(jmp mcons)
121
(eval ())
(push a1)
(push (cvalq res))
(mov '4 a4)
(jmp mcons)
118
(eval ())
(bra 116)
115
(push '#:system:for:arg2)
(push (@ 126))
(push 'let)
(push (@ 127))
(push (@ 128))
(push (cvalq #:system:var))
(push (cvalq init))
(mov '2 a4)
(jmp list)
128
(eval ())
(push a1)
(push (@ 129))
(push (& 5))
(push (cvalq end))
(mov '2 a4)
(jmp list)
129
(eval ())
(push a1)
(mov '2 a4)
(jmp list)
127
(eval ())
(push a1)
(push (@ 130))
(push 'while)
(push (@ 131))
(push (& 7))
(push (cvalq #:system:var))
(push (& 8))
(mov '3 a4)
(jmp list)
131
(eval ())
(push a1)
(push (@ 132))
(push (cvalq #:system:body))
(push (@ 133))
(push (@ 134))
(push 'incr)
(push (cvalq #:system:var))
(push (cvalq step))
(mov '3 a4)
(jmp list)
134
(eval ())
(push a1)
(mov '1 a4)
(jmp list)
133
(eval ())
(push a1)
(mov '2 a4)
(jmp append)
132
(eval ())
(push a1)
(mov '3 a4)
(jmp mcons)
130
(eval ())
(push a1)
(push (cvalq res))
(mov '4 a4)
(jmp mcons)
126
(eval ())
(adjstk '1)
116
(adjstk '1)
(bra 108)
107
(mov (cvalq end) a1)
(jcall numberp)
(bfnil a1 137)
(bfsymb (cvalq end) 135)
137
(bfsymb (cvalq step) 138)
(mov nil a2)
(mov nil a1)
(call #:system:generate-for)
(bra 108)
138
(mov nil a2)
(mov '#:system:for:arg1 a1)
(call #:system:generate-for)
(bra 108)
135
(bfsymb (cvalq step) 140)
(mov '#:system:for:arg2 a2)
(mov nil a1)
(call #:system:generate-for)
(bra 108)
140
(mov '#:system:for:arg2 a2)
(mov '#:system:for:arg1 a1)
(call #:system:generate-for)
108
(mov (& 1) dlink)
(mov (& 2) llink)
(mov (& 6) (cvalq end))
(mov (& 7) (cvalq end))
(mov (& 8) (cvalq res))
(mov (& 9) (cvalq #:system:body))
(mov (& 10) (cvalq step))
(mov (& 11) (cvalq init))
(mov (& 12) (cvalq #:system:var))
(adjstk '15)
(return)
))
(loader'((fentry closure subr2)
(entry closure subr2)
(push a1)
(push (cvalq #:system:f))
(mov a2 (cvalq #:system:f))
(push '1)
(push '(#:system:f))
(push (@ closure))
(push llink)
(mov nil llink)
(push dlink)
(push cbindn)
(stack dlink)
(push a1)
(push nil)
101
(bfcons (& 1) 102)
(mov (& 1) a4)
(mov (cdr a4) (& 1))
(push (car a4))
(push (@ 103))
(push 'quote)
(push (@ 104))
(push (& 3))
(mov '1 a4)
(jmp eval)
104
(eval ())
(push a1)
(mov '2 a4)
(jmp list)
103
(eval ())
(adjstk '1)
(mov (& 0) a2)
(jcall cons)
(mov a1 (& 0))
(bra 101)
102
(mov (& 0) a1)
(jcall nreverse)
(adjstk '2)
(mov (cvalq #:system:f) a4)
(mov (cdr a4) a4)
(mov (cvalq #:system:f) a3)
(mov (cdr a3) a3)
(push (car a4))
(push (cdr a3))
(push a1)
(push (@ 105))
(push 'lambda)
(push (& 4))
(push (@ 106))
(push 'lambda)
(push (& 15))
(push (@ 107))
(push 'protect)
(mov (& 9) a2)
(mov 'progn a1)
(jcall cons)
(push a1)
(push (& 9))
(push (& 20))
(push nil)
108
(bfcons (& 2) 109)
(bfcons (& 1) 109)
(mov (& 2) a4)
(mov (cdr a4) (& 2))
(mov (& 1) a3)
(mov (cdr a3) (& 1))
(push (car a4))
(push (car a3))
(push (@ 110))
(push 'rplaca)
(push (@ 111))
(push 'cdr)
(push (@ 112))
(push 'quote)
(push (& 7))
(mov '2 a4)
(jmp list)
112
(eval ())
(push a1)
(mov '2 a4)
(jmp list)
111
(eval ())
(push a1)
(push (& 3))
(mov '3 a4)
(jmp list)
110
(eval ())
(adjstk '2)
(mov (& 0) a2)
(jcall cons)
(mov a1 (& 0))
(bra 108)
109
(mov (& 0) a1)
(jcall nreverse)
(adjstk '3)
(push a1)
(mov '3 a4)
(jmp mcons)
107
(eval ())
(push a1)
(mov '3 a4)
(jmp list)
106
(eval ())
(mov (& 3) a2)
(jcall cons)
(push a1)
(mov '3 a4)
(jmp list)
105
(eval ())
(adjstk '3)
(mov (& 1) dlink)
(mov (& 2) llink)
(mov (& 6) (cvalq #:system:f))
(adjstk '8)
(return)
))
(loader'((entry #:system:generate-tagbody subr1)
(push a1)
(btnil a1 101)
(push a1)
(push 't)
105
(bfcons (& 1) 106)
(mov (& 1) a1)
(mov (cdr a1) (& 1))
(mov (car a1) a1)
(jcall consp)
(mov a1 (& 0))
(btnil a1 106)
(bra 105)
106
(mov (& 0) a4)
(adjstk '2)
(btnil a4 103)
(mov (& 0) a1)
(adjstk '1)
(return)
103
(push (@ 107))
(mov (& 1) a2)
(mov 'tagbody a1)
(jcall cons)
(push a1)
(mov '1 a4)
(jmp list)
107
(eval ())
(adjstk '1)
(return)
101
(mov nil a1)
(adjstk '1)
(return)
))
(loader'((entry #:system:generate-block subr2)
(push a2)
(push (@ 103))
(push 'ok)
(push dlink)
(push tag)
(stack dlink)
(call #:system:generate-block-aux)
(mov (& 1) dlink)
(adjstk '4)
103
(eval ())
(btnil a1 101)
(push (@ 104))
(push 'block)
(push nil)
(push (& 3))
(mov '3 a4)
(jmp list)
104
(eval ())
(adjstk '1)
(return)
101
(mov (& 0) a1)
(adjstk '1)
(return)
))
(loader'((entry #:system:generate-block-aux subr1)
(btcons a1 101)
(mov nil a1)
(return)
101
(mov (car a1) a4)
(cabeq a4 'return 105)
(cabne a4 'return-from 103)
105
(mov 't a1)
(mov 'ok a2)
(jmp #:llcp:exit)
103
(push a1)
(push nil)
106
(bfcons (& 1) 107)
(mov (& 1) a1)
(mov (cdr a1) (& 1))
(mov (car a1) a1)
(call #:system:generate-block-aux)
(mov a1 (& 0))
(bfnil a1 107)
(bra 106)
107
(mov (& 0) a1)
(adjstk '2)
(return)
))
(loader'((fentry prog dmsubr)
(entry prog dmsubr)
(push (cdr a1))
(btnil (car a1) 101)
(push (@ 103))
(push 'let)
(push (car a1))
(mov (cdr a1) a1)
(call #:system:generate-tagbody)
(push a1)
(mov '3 a4)
(jmp mcons)
103
(eval ())
(mov a1 a2)
(bra 102)
101
(mov (cdr a1) a1)
(call #:system:generate-tagbody)
(mov a1 a2)
(mov 'progn a1)
(jcall cons)
(mov a1 a2)
102
(pop a1)
(bra #:system:generate-block)
))
(loader'((fentry prog* dmsubr)
(entry prog* dmsubr)
(push (cdr a1))
(btnil (car a1) 101)
(push (@ 103))
(push 'let*)
(push (car a1))
(mov (cdr a1) a1)
(call #:system:generate-tagbody)
(push a1)
(mov '3 a4)
(jmp mcons)
103
(eval ())
(mov a1 a2)
(bra 102)
101
(mov (cdr a1) a1)
(call #:system:generate-tagbody)
(mov a1 a2)
(mov 'progn a1)
(jcall cons)
(mov a1 a2)
102
(pop a1)
(bra #:system:generate-block)
))
(loader'((fentry do dmsubr)
(entry do dmsubr)
(mov (cdr a1) a4)
(mov (car a1) a1)
(push a1)
(mov (cdr a4) a3)
(mov (car a4) a4)
(mov (cdr a4) a2)
(mov (car a4) a4)
(push a4)
(push a2)
(push a3)
(push a3)
(push (@ 101))
(push 'let)
(push a1)
(push nil)
102
(bfcons (& 1) 103)
(mov (& 1) a4)
(mov (cdr a4) (& 1))
(push (car a4))
(push (@ 104))
(mov (& 1) a4)
(push (car a4))
(mov (cdr a4) a4)
(push (car a4))
(mov '2 a4)
(jmp list)
104
(eval ())
(adjstk '1)
(mov (& 0) a2)
(jcall cons)
(mov a1 (& 0))
(bra 102)
103
(mov (& 0) a1)
(jcall nreverse)
(adjstk '2)
(push a1)
(push (@ 105))
(push 'until)
(push (& 8))
(push (@ 106))
(mov (& 8) a1)
(call #:system:generate-tagbody)
(push a1)
(push (& 12))
(push nil)
107
(bfcons (& 1) 108)
(mov (& 1) a4)
(mov (cdr a4) (& 1))
(push (car a4))
(mov (& 0) a4)
(mov (cdr a4) a4)
(bfcons (cdr a4) 109)
(push (@ 111))
(mov (& 1) a3)
(push (car a3))
(mov (cdr a3) a3)
(mov (cdr a3) a3)
(push (car a3))
(mov '2 a4)
(jmp list)
111
(eval ())
(bra 110)
109
(mov nil a1)
110
(adjstk '1)
(mov (& 0) a2)
(jcall nreconc)
(mov a1 (& 0))
(bra 107)
108
(mov (& 0) a1)
(jcall nreverse)
(adjstk '2)
(btnil a1 112)
(push (@ 114))
(mov a1 a2)
(mov 'psetq a1)
(jcall cons)
(push a1)
(mov '1 a4)
(jmp list)
114
(eval ())
(mov a1 a4)
(bra 113)
112
(mov nil a4)
113
(push a4)
(mov '2 a4)
(jmp append)
106
(eval ())
(push a1)
(mov '3 a4)
(jmp mcons)
105
(eval ())
(push a1)
(push (& 6))
(mov '4 a4)
(jmp mcons)
101
(eval ())
(mov a1 a2)
(pop a1)
(adjstk '4)
(bra #:system:generate-block)
))
(loader'((fentry do* dmsubr)
(entry do* dmsubr)
(mov (cdr a1) a4)
(mov (car a1) a1)
(push a1)
(mov (cdr a4) a3)
(mov (car a4) a4)
(mov (cdr a4) a2)
(mov (car a4) a4)
(push a4)
(push a2)
(push a3)
(push a3)
(push (@ 101))
(push 'let*)
(push a1)
(push nil)
102
(bfcons (& 1) 103)
(mov (& 1) a4)
(mov (cdr a4) (& 1))
(push (car a4))
(push (@ 104))
(mov (& 1) a4)
(push (car a4))
(mov (cdr a4) a4)
(push (car a4))
(mov '2 a4)
(jmp list)
104
(eval ())
(adjstk '1)
(mov (& 0) a2)
(jcall cons)
(mov a1 (& 0))
(bra 102)
103
(mov (& 0) a1)
(jcall nreverse)
(adjstk '2)
(push a1)
(push (@ 105))
(push 'until)
(push (& 8))
(push (@ 106))
(mov (& 8) a1)
(call #:system:generate-tagbody)
(push a1)
(push (& 12))
(push nil)
107
(bfcons (& 1) 108)
(mov (& 1) a4)
(mov (cdr a4) (& 1))
(push (car a4))
(mov (& 0) a4)
(mov (cdr a4) a4)
(bfcons (cdr a4) 109)
(push (@ 111))
(mov (& 1) a3)
(push (car a3))
(mov (cdr a3) a3)
(mov (cdr a3) a3)
(push (car a3))
(mov '2 a4)
(jmp list)
111
(eval ())
(bra 110)
109
(mov nil a1)
110
(adjstk '1)
(mov (& 0) a2)
(jcall nreconc)
(mov a1 (& 0))
(bra 107)
108
(mov (& 0) a1)
(jcall nreverse)
(adjstk '2)
(btnil a1 112)
(push (@ 114))
(mov a1 a2)
(mov 'setq a1)
(jcall cons)
(push a1)
(mov '1 a4)
(jmp list)
114
(eval ())
(mov a1 a4)
(bra 113)
112
(mov nil a4)
113
(push a4)
(mov '2 a4)
(jmp append)
106
(eval ())
(push a1)
(mov '3 a4)
(jmp mcons)
105
(eval ())
(push a1)
(push (& 6))
(mov '4 a4)
(jmp mcons)
101
(eval ())
(mov a1 a2)
(pop a1)
(adjstk '4)
(bra #:system:generate-block)
))
(loader'((fentry backtrack dmsubr)
(entry backtrack dmsubr)
(mov (cdr a1) a4)
(mov (car a1) a1)
(push a1)
(mov (cdr a4) a3)
(mov (car a4) a4)
(push a4)
(push a3)
(btsymb a1 102)
(mov a1 a3)
(mov 'errnaa a2)
(mov 'backtrack a1)
(jcall error)
102
(push (@ 103))
(push 'tag)
(push 'backtrack)
(bfnil (& 4) 104)
(push (& 3))
(push nil)
106
(bfcons (& 1) 107)
(mov (& 1) a4)
(mov (cdr a4) (& 1))
(push (car a4))
(push (@ 108))
(push 'tag)
(push (& 10))
(push (& 3))
(push '((exit backtrack)))
(mov '4 a4)
(jmp mcons)
108
(eval ())
(adjstk '1)
(mov (& 0) a2)
(jcall cons)
(mov a1 (& 0))
(bra 106)
107
(mov (& 0) a1)
(jcall nreverse)
(adjstk '2)
(mov a1 a4)
(bra 105)
104
(push (@ 109))
(push (@ 110))
(push 'let)
(push (@ 111))
(push (@ 112))
(push '#:system:backtrack)
(mov (& 10) a2)
(mov 'list a1)
(jcall cons)
(push a1)
(mov '2 a4)
(jmp list)
112
(eval ())
(push a1)
(mov '1 a4)
(jmp list)
111
(eval ())
(push a1)
(push (& 7))
(push nil)
113
(bfcons (& 1) 114)
(mov (& 1) a4)
(mov (cdr a4) (& 1))
(push (car a4))
(push (@ 115))
(push (@ 116))
(push 'tag)
(push (& 15))
(push (& 4))
(push '((exit backtrack)))
(mov '4 a4)
(jmp mcons)
116
(eval ())
(push a1)
(push (@ 117))
(push 'desetq)
(push (& 15))
(push '(#:system:backtrack))
(mov '3 a4)
(jmp mcons)
117
(eval ())
(push a1)
(mov '2 a4)
(jmp list)
115
(eval ())
(adjstk '1)
(mov (& 0) a2)
(jcall nreconc)
(mov a1 (& 0))
(bra 113)
114
(mov (& 0) a1)
(jcall nreverse)
(adjstk '2)
(push a1)
(mov '3 a4)
(jmp mcons)
110
(eval ())
(push a1)
(mov '1 a4)
(jmp list)
109
(eval ())
(mov a1 a4)
105
(push a4)
(mov '3 a4)
(jmp mcons)
103
(eval ())
(adjstk '3)
(return)
))
(loader'((fentry catch-all-but dmsubr)
(entry catch-all-but dmsubr)
(mov (cdr a1) a4)
(mov (car a1) a1)
(push a4)
(push (@ 101))
(push 'lock)
(push (@ 102))
(push 'lambda)
(push '(tag val))
(push (@ 103))
(push 'cond)
(push '((null tag) val))
(push (@ 104))
(push 'memq)
(push 'tag)
(push (@ 105))
(push 'quote)
(push a1)
(mov '2 a4)
(jmp list)
105
(eval ())
(push a1)
(mov '3 a4)
(jmp list)
104
(eval ())
(mov '((evexit tag val)) a2)
(jcall cons)
(push a1)
(push '((t (error 'catch-all-but errudt tag))))
(mov '4 a4)
(jmp mcons)
103
(eval ())
(push a1)
(mov '3 a4)
(jmp list)
102
(eval ())
(push a1)
(push (& 3))
(mov '3 a4)
(jmp mcons)
101
(eval ())
(adjstk '1)
(return)
))
(loader '((end)))