2010-m1s1-compilation/lisp/equiv-tests.lisp

22 lines
884 B
Common Lisp

(require 'squash-lisp "squash-lisp")
(require 'mini-meval "mini-meval")
(defun test-expr-in-all (expr)
(let ((res-eval (eval expr))
(sql nil))
(unless (equalp res-eval (mini-meval expr))
(return-from test-expr-in-all "mini-meval differs from-eval"))
(setq sql (squash-lisp-1 expr))
(unless (squash-lisp-1-check sql)
(return-from test-expr-in-all "squash-lisp-1-check failed"))
(unless (equalp res-eval (eval (squash-lisp-1-wrap sql)))
(return-from test-expr-in-all "squash-lisp-1 differs from-eval"))
;; (setq sql (squash-lisp-2 (squash-lisp-1 expr)))
;; (unless (squash-lisp-2-check sql)
;; (return-from test-expr-in-all "squash-lisp-2-check failed"))
;; (unless (equalp res-eval (eval (squash-lisp-2-wrap sql)))
;; (return-from test-expr-in-all "squash-lisp-2 differs from-eval"))
t))
(provide 'equiv-tests)