From: Dieter K. <cra...@us...> - 2010-06-01 16:37:02
|
Update of /cvsroot/maxima/maxima/src In directory sfp-cvsdas-4.v30.ch3.sourceforge.com:/tmp/cvs-serv27383/src Modified Files: comm.lisp comm2.lisp limit.lisp lmdcls.lisp Log Message: Renaming atp to *atp* to underline that it is a global special. Related files: comm.lisp comm2.lisp limit.lisp lmdcls.lisp No problems with the testsuite and share_testsuite. Index: comm.lisp =================================================================== RCS file: /cvsroot/maxima/maxima/src/comm.lisp,v retrieving revision 1.50 retrieving revision 1.51 diff -u -d -r1.50 -r1.51 --- comm.lisp 31 May 2010 18:44:15 -0000 1.50 +++ comm.lisp 1 Jun 2010 16:36:52 -0000 1.51 @@ -15,10 +15,14 @@ (declare-top (special $exptsubst $linechar $nolabels $inflag $piece $dispflag $gradefs $props $dependencies derivflag derivlist $linenum $partswitch linelable nn* dn* - $powerdisp atvars atp $errexp $derivsubst $dotdistrib + $powerdisp atvars $errexp $derivsubst $dotdistrib $opsubst $subnumsimp $transrun in-p substp $sqrtdispflag $pfeformat dummy-variable-operators)) +(defvar *islinp* nil) ; When T, sdiff is called from the function islinear. +(defvar *atp* nil) ; When T, prevents substitution from applying to vars + ; bound by %sum, %product, %integrate, %limit + ;; op and opr properties (defvar *opr-table* (make-hash-table :test #'equal)) @@ -53,14 +57,12 @@ (mapc #'(lambda (x) (putprop (car x) (cadr x) 'op)) '((mqapply $subvar) (bigfloat $bfloat))) - (setq $exptsubst nil $partswitch nil $inflag nil $gradefs '((mlist simp)) $dependencies '((mlist simp)) atvars '($@1 $@2 $@3 $@4) - atp nil lnorecurse nil $derivsubst nil timesp nil @@ -68,13 +70,10 @@ in-p nil substp nil) -(defvar *islinp* nil) ; When T, sdiff is called from the function islinear. - (defmvar $vect_cross nil "If TRUE allows DIFF(X~Y,T) to work where ~ is defined in SHARE;VECT where VECT_CROSS is set to TRUE.") - (defmfun $substitute (old new &optional (expr nil three-arg?)) (cond (three-arg? (maxima-substitute old new expr)) (t @@ -201,7 +200,7 @@ (let (newexpt) (cond ((atom z) z) ((specrepp z) (subst2 (specdisrep z))) - ((and atp (member (caar z) '(%derivative %laplace) :test #'eq)) z) + ((and *atp* (member (caar z) '(%derivative %laplace) :test #'eq)) z) ((at-substp z) z) ((alike1 y z) x) ((and timesp (eq (caar z) 'mtimes) (alike1 y (setq z (nformat z)))) x) @@ -281,8 +280,10 @@ ;;This probably should be a subst or macro. (defun at-substp (z) - (and atp (or (member (caar z) '(%derivative %del) :test #'eq) - (member (caar z) dummy-variable-operators :test #'eq)))) + (and *atp* + (or (member (caar z) '(%derivative %del) :test #'eq) + (member (caar z) dummy-variable-operators :test #'eq)))) + (defmfun recur-apply (fun e) (cond ((eq (caar e) 'bigfloat) e) ((specrepp e) (funcall fun (specdisrep e))) Index: comm2.lisp =================================================================== RCS file: /cvsroot/maxima/maxima/src/comm2.lisp,v retrieving revision 1.36 retrieving revision 1.37 diff -u -d -r1.36 -r1.37 --- comm2.lisp 31 May 2010 23:04:18 -0000 1.36 +++ comm2.lisp 1 Jun 2010 16:36:52 -0000 1.37 @@ -131,7 +131,7 @@ ;;;; AT ;;dummy-variable-operators is defined in COMM, which uses it inside of SUBST1. -(declare-top (special atvars ateqs atp munbound dummy-variable-operators)) +(declare-top (special atvars ateqs *atp* munbound dummy-variable-operators)) (defmfun $atvalue (exp eqs val) (let (dl vl fun) @@ -177,7 +177,7 @@ (defmfun $at (expr ateqs) (if (notloreq ateqs) (improper-arg-err ateqs '$at)) - (atscan (let ((atp t)) ($substitute ateqs expr)))) + (atscan (let ((*atp* t)) ($substitute ateqs expr)))) (defun atscan (expr) (cond ((or (atom expr) Index: limit.lisp =================================================================== RCS file: /cvsroot/maxima/maxima/src/limit.lisp,v retrieving revision 1.97 retrieving revision 1.98 diff -u -d -r1.97 -r1.98 --- limit.lisp 1 May 2010 23:45:25 -0000 1.97 +++ limit.lisp 1 Jun 2010 16:36:52 -0000 1.98 @@ -184,9 +184,9 @@ (unless (infinityp val) (unless (zerop2 val) (setq exp - (let ((atp t)) - ;; atp prevents substitution from applying to vars bound - ;; by %sum, %product, %integrate, %limit + (let ((*atp* t)) + ;; *atp* prevents substitution from applying to vars + ;; bound by %sum, %product, %integrate, %limit (subin (m+ var val) exp)))) (setq val (cond ((eq dr '$plus) '$zeroa) ((eq dr '$minus) '$zerob) Index: lmdcls.lisp =================================================================== RCS file: /cvsroot/maxima/maxima/src/lmdcls.lisp,v retrieving revision 1.34 retrieving revision 1.35 diff -u -d -r1.34 -r1.35 --- lmdcls.lisp 8 May 2010 19:39:27 -0000 1.34 +++ lmdcls.lisp 1 Jun 2010 16:36:52 -0000 1.35 @@ -107,7 +107,7 @@ *transl-debug* *transl-file-debug* *warned-fexprs* *warned-mode-vars* *warned-un-declared-vars* *zexptsimp? |-1//2| -sqrt3//2 |1//2| adn* aexprp algfac* algnotexact - aliaslist alpha *alphabet* arrays aryp assigns atp atvars baktrcl + aliaslist alpha *alphabet* arrays aryp assigns *atp* atvars baktrcl bfhalf bfmhalf bigfloat%e bigfloat%pi bigfloatone bigfloatzero bindlist bvars *mdebug* declares defined_variables defintdebug derivflag derivlist |