Function: math-simplify-step
math-simplify-step is a byte-compiled function defined in
calc-alg.el.gz.
Signature
(math-simplify-step A)
Source Code
;; Defined in /usr/src/emacs/lisp/calc/calc-alg.el.gz
;; The following has a "bug" in that if any recursive simplifications
;; occur only the first handler will be tried; this doesn't really
;; matter, since math-simplify-step is iterated to a fixed point anyway.
(defun math-simplify-step (a)
(if (Math-primp a)
a
(let ((aa (if (or math-top-only
(memq (car a) '(calcFunc-quote calcFunc-condition
calcFunc-evalto)))
a
(cons (car a) (mapcar #'math-simplify-step (cdr a))))))
(and (symbolp (car aa))
(let ((handler (get (car aa) 'math-simplify)))
(and handler
(while (and handler
(equal (setq aa (or (funcall (car handler) aa)
aa))
a))
(setq handler (cdr handler))))))
aa)))