emacs-diffs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Emacs-diffs] Changes to emacs/lisp/calc/calc-rewr.el [lexbind]


From: Miles Bader
Subject: [Emacs-diffs] Changes to emacs/lisp/calc/calc-rewr.el [lexbind]
Date: Thu, 11 Nov 2004 23:47:04 -0500

Index: emacs/lisp/calc/calc-rewr.el
diff -c emacs/lisp/calc/calc-rewr.el:1.4.4.3 
emacs/lisp/calc/calc-rewr.el:1.4.4.4
*** emacs/lisp/calc/calc-rewr.el:1.4.4.3        Fri Oct 29 02:05:13 2004
--- emacs/lisp/calc/calc-rewr.el        Fri Nov 12 04:21:20 2004
***************
*** 166,172 ****
  
  
  
! (defun math-rewrite (whole-expr rules &optional mmt-many)
    (let ((crules (math-compile-rewrites rules))
        (heads (math-rewrite-heads whole-expr))
        (trace-buffer (get-buffer "*Trace*"))
--- 166,172 ----
  
  
  
! (defun math-rewrite (whole-expr rules &optional math-mt-many)
    (let ((crules (math-compile-rewrites rules))
        (heads (math-rewrite-heads whole-expr))
        (trace-buffer (get-buffer "*Trace*"))
***************
*** 176,195 ****
        (calc-line-numbering nil)
        (calc-show-selections t)
        (calc-why nil)
!       (mmt-func (function
!                  (lambda (x)
!                    (let ((result (math-apply-rewrites x (cdr crules)
!                                                       heads crules)))
!                      (if result
!                          (progn
!                            (if trace-buffer
!                                (let ((fmt (math-format-stack-value
!                                            (list result nil nil))))
!                                  (save-excursion
!                                    (set-buffer trace-buffer)
!                                    (insert "\nrewrite to\n" fmt "\n"))))
!                            (setq heads (math-rewrite-heads result heads t))))
!                      result)))))
      (if trace-buffer
        (let ((fmt (math-format-stack-value (list whole-expr nil nil))))
          (save-excursion
--- 176,195 ----
        (calc-line-numbering nil)
        (calc-show-selections t)
        (calc-why nil)
!       (math-mt-func (function
!                        (lambda (x)
!                          (let ((result (math-apply-rewrites x (cdr crules)
!                                                             heads crules)))
!                            (if result
!                                (progn
!                                  (if trace-buffer
!                                      (let ((fmt (math-format-stack-value
!                                                  (list result nil nil))))
!                                        (save-excursion
!                                          (set-buffer trace-buffer)
!                                          (insert "\nrewrite to\n" fmt "\n"))))
!                                  (setq heads (math-rewrite-heads result heads 
t))))
!                            result)))))
      (if trace-buffer
        (let ((fmt (math-format-stack-value (list whole-expr nil nil))))
          (save-excursion
***************
*** 197,218 ****
            (setq truncate-lines t)
            (goto-char (point-max))
            (insert "\n\nBegin rewriting\n" fmt "\n"))))
!     (or mmt-many (setq mmt-many (or (nth 1 (car crules))
                                    math-rewrite-default-iters)))
!     (if (equal mmt-many '(var inf var-inf)) (setq mmt-many 1000000))
!     (if (equal mmt-many '(neg (var inf var-inf))) (setq mmt-many -1000000))
      (math-rewrite-phase (nth 3 (car crules)))
      (if trace-buffer
        (let ((fmt (math-format-stack-value (list whole-expr nil nil))))
          (save-excursion
            (set-buffer trace-buffer)
            (insert "\nDone rewriting"
!                   (if (= mmt-many 0) " (reached iteration limit)" "")
                    ":\n" fmt "\n"))))
      whole-expr))
  
  (defun math-rewrite-phase (sched)
!   (while (and sched (/= mmt-many 0))
      (if (listp (car sched))
        (while (let ((save-expr whole-expr))
                 (math-rewrite-phase (car sched))
--- 197,218 ----
            (setq truncate-lines t)
            (goto-char (point-max))
            (insert "\n\nBegin rewriting\n" fmt "\n"))))
!     (or math-mt-many (setq math-mt-many (or (nth 1 (car crules))
                                    math-rewrite-default-iters)))
!     (if (equal math-mt-many '(var inf var-inf)) (setq math-mt-many 1000000))
!     (if (equal math-mt-many '(neg (var inf var-inf))) (setq math-mt-many 
-1000000))
      (math-rewrite-phase (nth 3 (car crules)))
      (if trace-buffer
        (let ((fmt (math-format-stack-value (list whole-expr nil nil))))
          (save-excursion
            (set-buffer trace-buffer)
            (insert "\nDone rewriting"
!                   (if (= math-mt-many 0) " (reached iteration limit)" "")
                    ":\n" fmt "\n"))))
      whole-expr))
  
  (defun math-rewrite-phase (sched)
!   (while (and sched (/= math-mt-many 0))
      (if (listp (car sched))
        (while (let ((save-expr whole-expr))
                 (math-rewrite-phase (car sched))




reply via email to

[Prev in Thread] Current Thread [Next in Thread]