(loader '((title |microceyx.lo|)))
(if (not (>= (version) 15.2)) (progn (error 'load 'erricf 'microceyx)))
(if (not (featurep 'defstruct)) (progn (libload defstruct t)))
(setq #:sys-package:colon 'microceyx)
(defvar #:microceyx:ceyxv4-compat ())
(defvar #:microceyx:test-compat ())
(if (not (featurep 'abbrev)) (progn (libload abbrev)))
(add-feature 'microceyx)
(defvar errnotafield "l'argument n'est pas un champ de Tclass microceyx")
(defvar errnotatclass "l'argument n'est pas un nom de Tclass microceyx")
(defvar errtclassabbrev "abre'viation de Tclass microceyx de'ja` de'finie")
(defvar errrecordabbrev "abre'viation de Record microceyx de'ja` de'finie")
(defvar errceyxv4 "syntaxe ceyxv4 : entourez d'accolades Tclass et Record")
(defvar errbadfield "erreur de syntaxe pour un champ")
(defvar errrecordtoolong "un Record ne peut pas avoir plus de 16 champs")
(defvar errnotarecordoratclass "l'argument n'est pas un nom de Tclass ou de Record microceyx")
(loader'((entry #:microceyx:check-record-or-tclass subr2)
(push a2)
(push a1)
101
(bfsymb (& 1) 103)
(mov (& 1) a1)
(jcall tclass-namep)
(bfnil a1 102)
(mov (& 1) a1)
(jcall record-namep)
(bfnil a1 102)
(mov 'defstruct a2)
(mov (& 1) a1)
(jcall getprop)
(bfnil a1 102)
103
(mov (& 1) a3)
(mov (cvalq errnotarecordoratclass) a2)
(mov (& 0) a1)
(jcall error)
(mov a1 (& 1))
(bra 101)
102
(mov (& 1) a1)
(adjstk '2)
(return)
))
(loader'((entry #:microceyx:check-tclass subr2)
(push a2)
(push a1)
101
(mov (& 1) a1)
(jcall tclass-namep)
(bfnil a1 102)
(mov (& 1) a3)
(mov (cvalq errnotatclass) a2)
(mov (& 0) a1)
(jcall error)
(mov a1 (& 1))
(bra 101)
102
(mov (& 1) a1)
(adjstk '2)
(return)
))
(loader'((entry #:microceyx:check-field subr3)
(push a3)
(push a2)
(push a1)
101
(bfsymb (& 2) 103)
(push (@ 104))
(push (& 2))
(push (& 4))
(mov '2 a4)
(jmp getfn)
104
(eval ())
(bfnil a1 102)
103
(push (@ 105))
(push (& 2))
(push (& 4))
(mov '2 a4)
(jmp list)
105
(eval ())
(mov a1 a3)
(mov (cvalq errnotafield) a2)
(mov (& 0) a1)
(jcall error)
(mov a1 (& 2))
(bra 101)
102
(mov (& 2) a1)
(adjstk '3)
(return)
))
(loader'((fentry deftclass dmsubr)
(entry deftclass dmsubr)
(mov (cdr a1) a4)
(mov (car a1) a1)
(push a1)
(push a4)
(push nil)
101
(bfsymb (& 2) 103)
(mov (& 2) a4)
(btnil (pkgc a4) 102)
(mov (pkgc a4) a1)
(jcall tclass-namep)
(bfnil a1 102)
103
(mov (& 2) a3)
(mov (cvalq errnotatclass) a2)
(mov 'deftclass a1)
(jcall error)
(mov a1 (& 2))
(bra 101)
102
(mov (& 2) a4)
(bfnil (pkgc a4) 105)
(mov a4 a2)
(mov 'tclass a1)
(jcall symbol)
(mov a1 (& 2))
105
(mov (& 2) a2)
(mov nil a1)
(jcall symbol)
(mov a1 (& 0))
(jcall abbrevp)
(btnil a1 107)
(mov (& 0) a1)
(jcall get-abbrev)
(cabeq a1 (& 2) 107)
(mov (& 0) a3)
(mov (cvalq errtclassabbrev) a2)
(mov 'deftclass a1)
(jcall error)
107
(push (@ 108))
(push 'progn)
(push (@ 109))
(push 'defstruct)
(push (& 6))
(push (& 6))
(mov '3 a4)
(jmp mcons)
109
(eval ())
(push a1)
(push (@ 110))
(push 'defabbrev)
(mov (& 7) a2)
(mov nil a1)
(jcall symbol)
(push a1)
(push (& 8))
(mov '3 a4)
(jmp list)
110
(eval ())
(push a1)
(push (@ 111))
(push 'quote)
(push (& 8))
(mov '2 a4)
(jmp list)
111
(eval ())
(push a1)
(mov '4 a4)
(jmp list)
108
(eval ())
(adjstk '3)
(return)
))
(loader'((fentry defrecord dmsubr)
(entry defrecord dmsubr)
(mov (cdr a1) a4)
(mov (car a1) a1)
(push a1)
(push a4)
101
(bfvar (& 1) 103)
(mov (& 1) a4)
(btnil (pkgc a4) 102)
103
(mov (& 1) a3)
(mov (cvalq errnva) a2)
(mov 'defrecord a1)
(jcall error)
(mov a1 (& 1))
(bra 101)
102
(mov (& 0) a1)
(jcall length)
(cnble a1 '16 105)
(mov (& 0) a2)
(mov (& 1) a1)
(jcall cons)
(mov a1 a3)
(mov (cvalq errrecordtoolong) a2)
(mov 'defrecord a1)
(jcall error)
105
(push (& 0))
(push nil)
106
(bfcons (& 1) 107)
(mov (& 1) a4)
(mov (cdr a4) (& 1))
(push (car a4))
108
(btsymb (& 0) 109)
(bfcons (& 0) 110)
(mov (& 0) a4)
(bfsymb (car a4) 110)
(bfcons (cdr a4) 110)
(mov (cdr a4) a3)
(btnil (cdr a3) 109)
110
(mov (& 0) a3)
(mov (cvalq errbadfield) a2)
(mov 'defrecord a1)
(jcall error)
(mov a1 (& 0))
(bra 108)
109
(mov (& 0) a1)
(jcall consp)
(bfnil a1 111)
(mov '(()) a2)
(mov (& 0) a1)
(jcall cons)
111
(adjstk '1)
(mov (& 0) a2)
(jcall cons)
(mov a1 (& 0))
(bra 106)
107
(mov (& 0) a1)
(jcall nreverse)
(adjstk '2)
(mov a1 (& 0))
(mov (& 1) a1)
(jcall abbrevp)
(btnil a1 113)
(mov (& 1) a1)
(jcall get-abbrev)
(cabeq a1 (& 1) 113)
(mov (& 1) a3)
(mov (cvalq errrecordabbrev) a2)
(mov 'defrecord a1)
(jcall error)
113
(mov nil a1)
(jcall ncons)
(push a1)
(mov (& 1) a4)
(btnil (cdr a4) 114)
(push (@ 116))
(push (& 3))
(push a4)
(push nil)
(push a1)
(mov '4 a4)
(bra #:microceyx:make-field-access)
116
(eval ())
(mov a1 a4)
(bra 115)
114
(mov a1 a3)
(mov a4 a2)
(mov (& 2) a1)
(call #:microceyx:make-single-field-access)
(mov a1 a4)
115
(push a4)
(push (@ 117))
(push 'progn)
(push (@ 118))
(push 'de)
(mov 'make a2)
(mov (& 7) a1)
(jcall symbol)
(push a1)
(push nil)
(push (& 6))
(mov '4 a4)
(jmp list)
118
(eval ())
(push a1)
(push (@ 119))
(mov (& 5) a4)
(push (cdr a4))
(push (@ 120))
(push (@ 121))
(push 'putprop)
(push (@ 122))
(push 'quote)
(push (& 13))
(mov '2 a4)
(jmp list)
122
(eval ())
(push a1)
(push (@ 123))
(push 'quote)
(push (& 13))
(push nil)
124
(bfcons (& 1) 125)
(mov (& 1) a1)
(mov (cdr a1) (& 1))
(mov (car a1) a1)
(mov (& 0) a2)
(mov (car a1) a1)
(jcall cons)
(mov a1 (& 0))
(bra 124)
125
(mov (& 0) a1)
(jcall nreverse)
(adjstk '2)
(push a1)
(push (& 14))
(push nil)
126
(bfcons (& 1) 127)
(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 126)
127
(mov (& 0) a1)
(jcall nreverse)
(adjstk '2)
(mov a1 a2)
(pop a1)
(jcall cons)
(push a1)
(mov '2 a4)
(jmp list)
123
(eval ())
(push a1)
(push '('defrecord))
(mov '4 a4)
(jmp mcons)
121
(eval ())
(push a1)
(push (@ 128))
(push 'defabbrev)
(push (& 12))
(push (& 13))
(mov '3 a4)
(jmp list)
128
(eval ())
(push a1)
(push (@ 129))
(push 'quote)
(push (& 13))
(mov '2 a4)
(jmp list)
129
(eval ())
(push a1)
(mov '3 a4)
(jmp list)
120
(eval ())
(push a1)
(mov '2 a4)
(jmp nconc)
119
(eval ())
(push a1)
(mov '3 a4)
(jmp mcons)
117
(eval ())
(adjstk '4)
(return)
))
(loader'((entry #:microceyx:make-single-field-access subr3)
(push a2)
(push a1)
(push (@ 101))
(push a3)
(push (@ 102))
(push (@ 103))
(push 'de)
(mov (car a2) a2)
(mov (car a2) a2)
(jcall symbol)
(push a1)
(push '(&nobind (if (eq (arg) 1) (car (arg 0)) (car (rplaca (arg 0) (arg 1))))))
(mov '3 a4)
(jmp mcons)
103
(eval ())
(push a1)
(mov 'compiler a1)
(jcall featurep)
(btnil a1 104)
(push (@ 106))
(push 'defmacro-open)
(mov (& 7) a2)
(mov (car a2) a2)
(mov (car a2) a2)
(mov (& 6) a1)
(jcall symbol)
(push a1)
(push '((o . v) (ifn v (list 'car o) (list 'car (list 'rplaca o (car v))))))
(mov '3 a4)
(jmp mcons)
106
(eval ())
(mov a1 a4)
(bra 105)
104
(mov nil a4)
105
(push a4)
(mov '2 a4)
(jmp list)
102
(eval ())
(push a1)
(mov '2 a4)
(jmp nconc)
101
(eval ())
(push (@ 107))
(push 'ncons)
(mov (& 3) a4)
(mov (car a4) a4)
(mov (cdr a4) a4)
(push (car a4))
(mov '2 a4)
(jmp list)
107
(eval ())
(adjstk '2)
(return)
))
(loader'((entry #:microceyx:make-field-access nsubr)
(mov (& 2) a4)
(bfnil (cdr a4) 101)
(push (@ 103))
(push (& 1))
(mov (& 3) a3)
(mov (car a4) a2)
(mov (& 5) a1)
(call #:microceyx:make-access)
(push a1)
(mov '2 a4)
(jmp nconc)
103
(eval ())
(mov (& 2) a1)
(mov (car a1) a1)
(mov (cdr a1) a1)
(mov (car a1) a1)
(adjstk '4)
(return)
101
(push (@ 104))
(push 'cons)
(push (@ 105))
(push (& 6))
(mov a4 a1)
(jcall length)
(quo '2 a1)
(mov (& 6) a2)
(jcall firstn)
(push a1)
(mov (& 6) a2)
(mov 'a a1)
(jcall cons)
(push a1)
(push (& 6))
(mov '4 a4)
(bra #:microceyx:make-field-access)
105
(eval ())
(push a1)
(push (@ 106))
(push (& 7))
(mov (& 7) a1)
(jcall length)
(quo '2 a1)
(mov (& 7) a2)
(jcall nthcdr)
(push a1)
(mov (& 7) a2)
(mov 'd a1)
(jcall cons)
(push a1)
(push (& 7))
(mov '4 a4)
(bra #:microceyx:make-field-access)
106
(eval ())
(push a1)
(mov '3 a4)
(jmp list)
104
(eval ())
(adjstk '4)
(return)
))
(loader'((entry #:microceyx:make-access subr3)
(push a3)
(push a2)
(push a1)
(push (@ 101))
(push 'de)
(mov (car a2) a2)
(jcall symbol)
(push a1)
(push '&nobind)
(push (@ 102))
(push 'if)
(push '(eq (arg) 1))
(push (@ 103))
(push (& 10))
(push '(r))
(mov '2 a4)
(jmp append)
103
(eval ())
(mov a1 a2)
(mov 'c a1)
(jcall cons)
(jcall implodech)
(mov '((arg 0)) a2)
(jcall cons)
(push a1)
(push (@ 104))
(push (@ 105))
(push 'c)
(mov (& 13) a4)
(push (car a4))
(push '(r))
(mov '3 a4)
(jmp mcons)
105
(eval ())
(jcall implodech)
(push a1)
(push (@ 106))
(push (@ 107))
(push '"rplac")
(mov (& 15) a4)
(push (car a4))
(mov '2 a4)
(jmp concat)
107
(eval ())
(push a1)
(mov (& 14) a4)
(btnil (cdr a4) 108)
(push (@ 110))
(push (cdr a4))
(push '(r))
(mov '2 a4)
(jmp append)
110
(eval ())
(mov a1 a2)
(mov 'c a1)
(jcall cons)
(jcall implodech)
(mov '((arg 0)) a2)
(jcall cons)
(mov a1 a4)
(bra 109)
108
(mov '(arg 0) a4)
109
(push a4)
(push '((arg 1)))
(mov '3 a4)
(jmp mcons)
106
(eval ())
(push a1)
(mov '2 a4)
(jmp list)
104
(eval ())
(push a1)
(mov '4 a4)
(jmp list)
102
(eval ())
(push a1)
(mov '4 a4)
(jmp list)
101
(eval ())
(push a1)
(mov 'compiler a1)
(jcall featurep)
(btnil a1 111)
(push (@ 113))
(push (@ 114))
(push 'defmacro-open)
(mov (& 5) a2)
(mov (car a2) a2)
(mov (& 4) a1)
(jcall symbol)
(push a1)
(push '(o . v))
(push (@ 115))
(push 'ifn)
(push 'v)
(push (@ 116))
(push 'list)
(push (@ 117))
(push 'quote)
(push (@ 118))
(push (& 16))
(push '(r))
(mov '2 a4)
(jmp append)
118
(eval ())
(mov a1 a2)
(mov 'c a1)
(jcall cons)
(jcall implodech)
(push a1)
(mov '2 a4)
(jmp list)
117
(eval ())
(push a1)
(push '(o))
(mov '3 a4)
(jmp mcons)
116
(eval ())
(push a1)
(mov (& 12) a4)
(btnil (cdr a4) 119)
(push (@ 121))
(push 'list)
(push (@ 122))
(push 'quote)
(push (@ 123))
(push 'c)
(push (car a4))
(push '(r))
(mov '3 a4)
(jmp mcons)
123
(eval ())
(jcall implodech)
(push a1)
(mov '2 a4)
(jmp list)
122
(eval ())
(push a1)
(push (@ 124))
(push 'list)
(push (@ 125))
(push 'quote)
(push (@ 126))
(push '"rplac")
(mov (& 21) a4)
(push (car a4))
(mov '2 a4)
(jmp concat)
126
(eval ())
(push a1)
(mov '2 a4)
(jmp list)
125
(eval ())
(push a1)
(push (@ 127))
(push 'list)
(push (@ 128))
(push 'quote)
(push (@ 129))
(mov (& 23) a4)
(push (cdr a4))
(push '(r))
(mov '2 a4)
(jmp append)
129
(eval ())
(mov a1 a2)
(mov 'c a1)
(jcall cons)
(jcall implodech)
(push a1)
(mov '2 a4)
(jmp list)
128
(eval ())
(push a1)
(push '(o))
(mov '3 a4)
(jmp mcons)
127
(eval ())
(push a1)
(push '((car v)))
(mov '4 a4)
(jmp mcons)
124
(eval ())
(push a1)
(mov '3 a4)
(jmp list)
121
(eval ())
(mov a1 a4)
(bra 120)
119
(push (@ 130))
(push 'list)
(push (@ 131))
(push 'quote)
(push (@ 132))
(push 'c)
(push (car a4))
(push '(r))
(mov '3 a4)
(jmp mcons)
132
(eval ())
(jcall implodech)
(push a1)
(mov '2 a4)
(jmp list)
131
(eval ())
(push a1)
(push (@ 133))
(push 'list)
(push (@ 134))
(push 'quote)
(push (@ 135))
(push '"rplac")
(mov (& 21) a4)
(push (car a4))
(mov '2 a4)
(jmp concat)
135
(eval ())
(push a1)
(mov '2 a4)
(jmp list)
134
(eval ())
(push a1)
(push '(o (car v)))
(mov '3 a4)
(jmp mcons)
133
(eval ())
(push a1)
(mov '3 a4)
(jmp list)
130
(eval ())
(mov a1 a4)
120
(push a4)
(mov '4 a4)
(jmp list)
115
(eval ())
(push a1)
(mov '4 a4)
(jmp list)
114
(eval ())
(push a1)
(mov '1 a4)
(jmp list)
113
(eval ())
(mov a1 a2)
(bra 112)
111
(mov nil a2)
112
(pop a1)
(adjstk '3)
(jmp cons)
))
(loader'((fentry tclass-namep subr1)
(entry tclass-namep subr1)
(push a1)
(bfsymb a1 101)
(mov 'tclass a2)
(jcall subtypep)
(btnil a1 101)
(mov 'defstruct a2)
(mov (& 0) a1)
(jcall getprop)
(btnil a1 101)
(mov 't a1)
(adjstk '1)
(return)
101
(mov nil a1)
(adjstk '1)
(return)
))
(loader'((fentry record-namep subr1)
(entry record-namep subr1)
(bfsymb a1 101)
(mov 'defrecord a2)
(jcall getprop)
(btnil a1 101)
(mov 't a1)
(return)
101
(mov nil a1)
(return)
))
(loader'((fentry field-list subr1)
(entry field-list subr1)
(push a1)
(mov a1 a2)
(mov 'field-list a1)
(call #:microceyx:check-record-or-tclass)
(mov a1 (& 0))
(jcall record-namep)
(btnil a1 101)
(mov 'defrecord a2)
(mov (& 0) a1)
(jcall getprop)
(mov (car a1) a1)
(adjstk '1)
(return)
101
(mov nil a2)
(mov (& 0) a1)
(adjstk '1)
(bra #:microceyx:tclass-field-list)
))
(loader'((entry #:microceyx:tclass-field-list subr2)
(push a2)
(bfnil a1 101)
(mov a2 a1)
(adjstk '1)
(return)
101
(cabne a1 'tclass 103)
(mov a2 a1)
(adjstk '1)
(return)
103
(push (pkgc a1))
(push (@ 105))
(mov 'defstruct a2)
(jcall getprop)
(push (cdr a1))
(push (& 3))
(mov '2 a4)
(jmp append)
105
(eval ())
(mov a1 a2)
(pop a1)
(adjstk '1)
(bra #:microceyx:tclass-field-list)
))
(loader'((fentry defmake dmsubr)
(entry defmake dmsubr)
(mov (cdr a1) a4)
(mov (car a1) a1)
(push a1)
(mov (cdr a4) a3)
(mov (car a4) a4)
(push a4)
(mov (car a3) a3)
(push a3)
101
(btvar (& 1) 102)
(mov (& 1) a3)
(mov (cvalq errsym) a2)
(mov 'defmake a1)
(jcall error)
(mov a1 (& 1))
(bra 101)
102
(push (@ 103))
(push 'de)
(push (& 3))
(push (& 3))
(push (@ 104))
(push 'omakeq)
(push (& 8))
(push (& 7))
(push nil)
105
(bfcons (& 1) 106)
(mov (& 1) a4)
(mov (cdr a4) (& 1))
(push (car a4))
(push (@ 107))
(push (& 1))
(push (& 2))
(mov '2 a4)
(jmp list)
107
(eval ())
(adjstk '1)
(mov (& 0) a2)
(jcall nreconc)
(mov a1 (& 0))
(bra 105)
106
(mov (& 0) a1)
(jcall nreverse)
(adjstk '2)
(push a1)
(mov '3 a4)
(jmp mcons)
104
(eval ())
(push a1)
(mov '4 a4)
(jmp list)
103
(eval ())
(adjstk '3)
(return)
))
(loader'((fentry omakeq dmsubr)
(entry omakeq dmsubr)
(mov (cdr a1) a4)
(mov (car a1) a1)
(push a1)
(push a4)
(push nil)
(push nil)
(push nil)
(mov a1 a2)
(mov 'omakeq a1)
(call #:microceyx:check-record-or-tclass)
(mov a1 (& 4))
101
(bfcons (& 3) 102)
(mov (& 3) a3)
(mov (cdr a3) (& 3))
(mov (car a3) a3)
(mov (& 4) a2)
(mov 'omakeq a1)
(call #:microceyx:check-field)
(mov a1 (& 1))
(btcons (& 3) 104)
(bfnil (& 3) 105)
(mov (cvalq errwna) a2)
(bra 106)
105
(mov (cvalq errbpa) a2)
106
(mov (& 3) a3)
(mov 'omakeq a1)
(jcall error)
104
(mov (& 3) a4)
(mov (car a4) (& 0))
(mov (cdr a4) (& 3))
(push (@ 107))
(push (@ 108))
(push (& 6))
(push (& 4))
(mov '2 a4)
(jmp getfn)
108
(eval ())
(push a1)
(push '#:microceyx:res)
(push (& 3))
(mov '3 a4)
(jmp list)
107
(eval ())
(mov (& 2) a2)
(jcall cons)
(mov a1 (& 2))
(bra 101)
102
(btnil (& 3) 110)
(mov (& 3) a3)
(mov (cvalq errbpa) a2)
(mov 'omakeq a1)
(jcall error)
110
(push (@ 111))
(push 'let)
(push (@ 112))
(push (@ 113))
(push '#:microceyx:res)
(push (@ 114))
(mov 'make a2)
(mov (& 10) a1)
(jcall symbol)
(push a1)
(mov '1 a4)
(jmp list)
114
(eval ())
(push a1)
(mov '2 a4)
(jmp list)
113
(eval ())
(push a1)
(mov '1 a4)
(jmp list)
112
(eval ())
(push a1)
(push (@ 115))
(mov (& 6) a1)
(jcall nreverse)
(push a1)
(push '(#:microceyx:res))
(mov '2 a4)
(jmp nconc)
115
(eval ())
(push a1)
(mov '3 a4)
(jmp mcons)
111
(eval ())
(adjstk '5)
(return)
))
(loader'((fentry ogetq dmsubr)
(entry ogetq dmsubr)
(mov (cdr a1) a4)
(mov (car a1) a1)
(push a1)
(mov (cdr a4) a3)
(mov (car a4) a4)
(push a4)
(mov (car a3) a3)
(push (cvalq obj))
(mov a3 (cvalq obj))
(push '1)
(push '(obj))
(push (@ ogetq))
(push llink)
(mov nil llink)
(push dlink)
(push cbindn)
(stack dlink)
(mov a1 a2)
(mov 'ogetq a1)
(call #:microceyx:check-record-or-tclass)
(mov a1 (& 8))
(mov (& 7) a3)
(mov a1 a2)
(mov 'ogetq a1)
(call #:microceyx:check-field)
(mov a1 (& 7))
(push (@ 101))
(push (@ 102))
(push (& 10))
(push a1)
(mov '2 a4)
(jmp getfn)
102
(eval ())
(push a1)
(push (cvalq obj))
(mov '2 a4)
(jmp list)
101
(eval ())
(mov (& 1) dlink)
(mov (& 2) llink)
(mov (& 6) (cvalq obj))
(adjstk '9)
(return)
))
(loader'((fentry oputq dmsubr)
(entry oputq dmsubr)
(mov (cdr a1) a4)
(mov (car a1) a1)
(push a1)
(mov (cdr a4) a3)
(mov (car a4) a4)
(push a4)
(mov (cdr a3) a2)
(mov (car a3) a3)
(mov (car a2) a2)
(push a2)
(push (cvalq obj))
(mov a3 (cvalq obj))
(push '1)
(push '(obj))
(push (@ oputq))
(push llink)
(mov nil llink)
(push dlink)
(push cbindn)
(stack dlink)
(mov a1 a2)
(mov 'oputq a1)
(call #:microceyx:check-record-or-tclass)
(mov a1 (& 9))
(mov (& 8) a3)
(mov a1 a2)
(mov 'oputq a1)
(call #:microceyx:check-field)
(mov a1 (& 8))
(push (@ 101))
(push (@ 102))
(push (& 11))
(push a1)
(mov '2 a4)
(jmp getfn)
102
(eval ())
(push a1)
(push (cvalq obj))
(push (& 10))
(mov '3 a4)
(jmp list)
101
(eval ())
(mov (& 1) dlink)
(mov (& 2) llink)
(mov (& 6) (cvalq obj))
(adjstk '10)
(return)
))
(loader'((fentry omatchq dmsubr)
(entry omatchq dmsubr)
(mov (cdr a1) a4)
(mov (car a1) a1)
(push a1)
(mov (car a4) a4)
(push (cvalq obj))
(mov a4 (cvalq obj))
(push '1)
(push '(obj))
(push (@ omatchq))
(push llink)
(mov nil llink)
(push dlink)
(push cbindn)
(stack dlink)
(mov a1 a2)
(mov 'omatchq a1)
(call #:microceyx:check-tclass)
(mov a1 (& 7))
(push (@ 101))
(push 'typep)
(push (cvalq obj))
(push (@ 102))
(push 'quote)
(push a1)
(mov '2 a4)
(jmp list)
102
(eval ())
(push a1)
(mov '3 a4)
(jmp list)
101
(eval ())
(mov (& 1) dlink)
(mov (& 2) llink)
(mov (& 6) (cvalq obj))
(adjstk '8)
(return)
))
(loader'((fentry demethod dmsubr)
(entry demethod 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 a2)
(push (cdr a3))
(mov (car a3) a3)
(push a3)
(push (cvalq obj))
(mov a4 (cvalq obj))
(push '1)
(push '(obj))
(push (@ demethod))
(push llink)
(mov nil llink)
(push dlink)
(push cbindn)
(stack dlink)
101
(btsymb (& 10) 102)
(mov (& 10) a3)
(mov (cvalq errsym) a2)
(mov 'demethod a1)
(jcall error)
(mov a1 (& 10))
(bra 101)
102
(mov (& 10) a2)
(mov (pkgc a2) a2)
(mov 'demethod a1)
(call #:microceyx:check-record-or-tclass)
(push a1)
(mov (& 8) a1)
(jcall listp)
(bfnil a1 104)
(mov (& 8) a3)
(mov (cvalq errnla) a2)
(mov 'demethod a1)
(jcall error)
104
(push (@ 105))
(push 'de)
(push (& 13))
(mov (& 13) a2)
(mov (cvalq obj) a1)
(jcall cons)
(push a1)
(bfnil (& 12) 106)
(mov (& 13) a4)
(bra 107)
106
(push (@ 108))
(push (@ 109))
(push 'let)
(push (& 15))
(push nil)
110
(bfcons (& 1) 111)
(mov (& 1) a4)
(mov (cdr a4) (& 1))
(push (car a4))
(mov (& 0) a3)
(mov (& 10) a2)
(mov 'demethod a1)
(call #:microceyx:check-field)
(mov a1 (& 0))
(push (@ 112))
(push a1)
(push (@ 113))
(push (@ 114))
(push (& 14))
(push a1)
(mov '2 a4)
(jmp getfn)
114
(eval ())
(push a1)
(push (cvalq obj))
(mov '2 a4)
(jmp list)
113
(eval ())
(push a1)
(mov '2 a4)
(jmp list)
112
(eval ())
(adjstk '1)
(mov (& 0) a2)
(jcall cons)
(mov a1 (& 0))
(bra 110)
111
(mov (& 0) a1)
(jcall nreverse)
(adjstk '2)
(push a1)
(push (& 17))
(mov '3 a4)
(jmp mcons)
109
(eval ())
(push a1)
(mov '1 a4)
(jmp list)
108
(eval ())
(mov a1 a4)
107
(push a4)
(mov '4 a4)
(jmp mcons)
105
(eval ())
(adjstk '1)
(mov (& 1) dlink)
(mov (& 2) llink)
(mov (& 6) (cvalq obj))
(adjstk '11)
(return)
))
(loader'((fentry send-error subr2)
(entry send-error subr2)
(push a2)
(push a1)
(push (@ 101))
(push '*)
(push a1)
(mov '2 a4)
(jmp getfn)
101
(eval ())
(btnil a1 102)
(push (@ 104))
(push a1)
(push (& 3))
(mov '2 a4)
(jmp apply)
104
(eval ())
(adjstk '2)
(return)
102
(mov (& 1) a2)
(mov (& 0) a1)
(jcall cons)
(mov a1 a3)
(mov (cvalq errudm) a2)
(mov 'send a1)
(adjstk '2)
(jmp error)
))
(loader'((fentry sendq dmsubr)
(entry sendq dmsubr)
(mov (cdr a1) a4)
(mov (car a1) a1)
(push a4)
(push (@ 101))
(push 'send)
(push (@ 102))
(push 'quote)
(push a1)
(mov '2 a4)
(jmp list)
102
(eval ())
(push a1)
(push (& 3))
(mov '3 a4)
(jmp mcons)
101
(eval ())
(adjstk '1)
(return)
))
(loader'((fentry sendf dmsubr)
(entry sendf dmsubr)
(mov (cdr a1) a4)
(mov (car a1) a1)
(push (@ 101))
(push 'lambda)
(push '(#:microceyx:arg1))
(push (@ 102))
(push 'send)
(push a1)
(push '#:microceyx:arg1)
(push a4)
(mov '4 a4)
(jmp mcons)
102
(eval ())
(push a1)
(mov '3 a4)
(jmp list)
101
(eval ())
(return)
))
(loader'((fentry sendfq dmsubr)
(entry sendfq dmsubr)
(mov (cdr a1) a4)
(mov (car a1) a1)
(push a4)
(push (@ 101))
(push 'sendf)
(push (@ 102))
(push 'quote)
(push a1)
(mov '2 a4)
(jmp list)
102
(eval ())
(push a1)
(push (& 3))
(mov '3 a4)
(jmp mcons)
101
(eval ())
(adjstk '1)
(return)
))
(loader'((fentry plink nsubr)
(entry plink nsubr)
(cnbge a4 '1 0)
(mov 'plink a1)
(mov '1 a2)
(jmp #:llcp:errwna)
0
(diff '1 a4)
(jcall #:llcp:nlist)
(bfnil a1 101)
(mov (& 0) a1)
(jcall abbrevp)
(btnil a1 103)
(mov (& 0) a1)
(adjstk '1)
(jmp get-abbrev)
103
(mov (& 0) a1)
(adjstk '1)
(return)
101
(mov (car a1) a2)
(mov (& 0) a1)
(adjstk '1)
(jmp put-abbrev)
))
(loader'((fentry <=p dmsubr)
(entry <=p dmsubr)
(mov (cdr a1) a4)
(mov (car a1) a1)
(mov (car a4) a4)
(push (@ 101))
(push 'subtypep)
(push a1)
(push a4)
(mov '3 a4)
(jmp list)
101
(eval ())
(return)
))
(loader '((end)))