other
(in-package "ACL2")
other
(set-state-ok t)
other
(program)
stobjs-in-listfunction
(defun stobjs-in-list (stobjs-in formals) (if (endp formals) nil (cons (and (member (car formals) stobjs-in) (car formals)) (stobjs-in-list stobjs-in (cdr formals)))))
extend-wrld-with-fn-args-listfunction
(defun extend-wrld-with-fn-args-list (stobjs-in fn-args-lst wrld) (cond ((endp fn-args-lst) wrld) (t (let ((fn (caar fn-args-lst)) (formals (cdar fn-args-lst))) (putprop fn 'symbol-class :common-lisp-compliant (putprop fn 'stobjs-in (stobjs-in-list stobjs-in formals) (putprop fn 'formals formals (extend-wrld-with-fn-args-list stobjs-in (cdr fn-args-lst) wrld))))))))
translate1-cwfunction
(defun translate1-cw (x stobjs-out bindings known-stobjs ctx w) (mv-let (erp msg-or-val bindings) (translate1-cmp x stobjs-out bindings known-stobjs ctx w (default-state-vars nil)) (cond (erp (prog2$ (cw "~%~%ERROR in translate1-cw: ~@0~%~%" msg-or-val) (mv t x bindings))) (t (mv nil msg-or-val bindings)))))
self-bindingsfunction
(defun self-bindings (fn-args-lst) (if (endp fn-args-lst) nil (acons (caar fn-args-lst) (caar fn-args-lst) (self-bindings (cdr fn-args-lst)))))
pseudo-translate-defunfunction
(defun pseudo-translate-defun (fn stobjs-in form fn-args-lst wrld) (let ((wrld (extend-wrld-with-fn-args-list stobjs-in fn-args-lst wrld))) (let ((stobjs-out (or fn t)) (bindings (self-bindings fn-args-lst))) (mv-let (flg val bindings) (translate1-cw form stobjs-out bindings t 'pseudo-translate wrld) (let ((signature (and fn (cdr (assoc fn bindings))))) (mv flg val signature))))))
pseudo-translatefunction
(defun pseudo-translate (form fn-args-lst wrld) (mv-let (flg val sig) (pseudo-translate-defun nil nil form fn-args-lst wrld) (declare (ignore sig)) (mv flg val)))