summaryrefslogtreecommitdiff
path: root/lisp/calc/calc-alg.el
diff options
context:
space:
mode:
Diffstat (limited to 'lisp/calc/calc-alg.el')
-rw-r--r--lisp/calc/calc-alg.el19
1 files changed, 8 insertions, 11 deletions
diff --git a/lisp/calc/calc-alg.el b/lisp/calc/calc-alg.el
index 728acf5b0f1..274f399fe6a 100644
--- a/lisp/calc/calc-alg.el
+++ b/lisp/calc/calc-alg.el
@@ -415,17 +415,14 @@
(defmacro math-defsimplify (funcs &rest code)
- (append '(progn)
- (mapcar (function
- (lambda (func)
- (list 'put (list 'quote func) ''math-simplify
- (list 'nconc
- (list 'get (list 'quote func) ''math-simplify)
- (list 'list
- (list 'function
- (append '(lambda (math-simplify-expr))
- code)))))))
- (if (symbolp funcs) (list funcs) funcs))))
+ (cons 'progn
+ (mapcar #'(lambda (func)
+ `(put ',func 'math-simplify
+ (nconc
+ (get ',func 'math-simplify)
+ (list
+ #'(lambda (math-simplify-expr) ,@code)))))
+ (if (symbolp funcs) (list funcs) funcs))))
(put 'math-defsimplify 'lisp-indent-hook 1)
;; The function created by math-defsimplify uses the variable