<feed xmlns='http://www.w3.org/2005/Atom'>
<title>emacs/test/lisp/calc, branch feature/uniquify-as-function</title>
<subtitle>Emacs is the extensible, customizable, self-documenting real-time display editor. 
</subtitle>
<link rel='alternate' type='text/html' href='https://jason.zzq.org/git/emacs/'/>
<entry>
<title>Calc: fix binomial coefficients for negative arguments (bug#16999)</title>
<updated>2020-09-14T09:19:22+00:00</updated>
<author>
<name>Mattias Engdegård</name>
</author>
<published>2020-09-11T09:43:15+00:00</published>
<link rel='alternate' type='text/html' href='https://jason.zzq.org/git/emacs/commit/?id=0e00f199cd3599977f75326bb7adc9d70390661e'/>
<id>0e00f199cd3599977f75326bb7adc9d70390661e</id>
<content type='text'>
For some values outside integers 0≤k≤n, (n choose k) gave wrong
results, entered infinite recursion or used unreasonably amounts of
stack space.  This change fixes that and extends the function to all
integer arguments using the definitions from M. J. Kronenburg
(https://arxiv.org/abs/1105.3689).

* lisp/calc/calc-comb.el (calcFunc-choose):
Fix sign error to prevent infinite recursion and extend function to
handle all integer arguments.
(math-choose-iter, math-choose-float-iter): Rewrite in iterative form;
no TCO in elisp yet.
* test/lisp/calc/calc-tests.el (calc-tests--fac, calc-tests--choose)
(calc-tests--check-choose, calc-tests--explain-choose)
(calc-tests--calc-to-number): New helper functions.
(calc-choose): New test.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
For some values outside integers 0≤k≤n, (n choose k) gave wrong
results, entered infinite recursion or used unreasonably amounts of
stack space.  This change fixes that and extends the function to all
integer arguments using the definitions from M. J. Kronenburg
(https://arxiv.org/abs/1105.3689).

* lisp/calc/calc-comb.el (calcFunc-choose):
Fix sign error to prevent infinite recursion and extend function to
handle all integer arguments.
(math-choose-iter, math-choose-float-iter): Rewrite in iterative form;
no TCO in elisp yet.
* test/lisp/calc/calc-tests.el (calc-tests--fac, calc-tests--choose)
(calc-tests--check-choose, calc-tests--explain-choose)
(calc-tests--calc-to-number): New helper functions.
(calc-choose): New test.
</pre>
</div>
</content>
</entry>
<entry>
<title>Calc: regularise test names</title>
<updated>2020-09-11T11:11:43+00:00</updated>
<author>
<name>Mattias Engdegård</name>
</author>
<published>2020-09-11T11:11:43+00:00</published>
<link rel='alternate' type='text/html' href='https://jason.zzq.org/git/emacs/commit/?id=c0eee8cb2c1d2131520449d93d9327e3492e1144'/>
<id>c0eee8cb2c1d2131520449d93d9327e3492e1144</id>
<content type='text'>
* test/lisp/calc/calc-tests.el (calc-remove-units, calc-extract-units)
(calc-convert-units, calc-bug-23889, calc-trig, calc-format-radix)
(calc-calendar, calc-solve-linear-system):
Use a uniform naming convention (calc- prefix) to simplify test running.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
* test/lisp/calc/calc-tests.el (calc-remove-units, calc-extract-units)
(calc-convert-units, calc-bug-23889, calc-trig, calc-format-radix)
(calc-calendar, calc-solve-linear-system):
Use a uniform naming convention (calc- prefix) to simplify test running.
</pre>
</div>
</content>
</entry>
<entry>
<title>Calc: GCD(0,x)=GCD(x,0)=|x|, not x (bug#41279)</title>
<updated>2020-05-15T18:15:36+00:00</updated>
<author>
<name>Mattias Engdegård</name>
</author>
<published>2020-05-15T12:52:50+00:00</published>
<link rel='alternate' type='text/html' href='https://jason.zzq.org/git/emacs/commit/?id=60cd6cce55744e8d3ae844e0602c9dd268dc4bc3'/>
<id>60cd6cce55744e8d3ae844e0602c9dd268dc4bc3</id>
<content type='text'>
Reported by David Ongaro.

* lisp/calc/calc-comb.el (calcFunc-gcd): Fix GCD simplification.
* test/lisp/calc/calc-tests.el (calc-gcd, calc-sum-gcd): New tests.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Reported by David Ongaro.

* lisp/calc/calc-comb.el (calcFunc-gcd): Fix GCD simplification.
* test/lisp/calc/calc-tests.el (calc-gcd, calc-sum-gcd): New tests.
</pre>
</div>
</content>
</entry>
<entry>
<title>Calc: fix LU decomposition for non-numeric matrices (bug#41223)</title>
<updated>2020-05-14T08:28:51+00:00</updated>
<author>
<name>Mattias Engdegård</name>
</author>
<published>2020-05-13T13:17:10+00:00</published>
<link rel='alternate' type='text/html' href='https://jason.zzq.org/git/emacs/commit/?id=1d559581b3bcd91644e44b1e3a3788614d99924f'/>
<id>1d559581b3bcd91644e44b1e3a3788614d99924f</id>
<content type='text'>
Computing determinant and inverse for on some matrices containing
non-numeric elements failed or gave the wrong result.
Reported by Mauro Aranda.

* lisp/calc/calc-mtx.el (math-do-matrix-lud): Don't use zero as pivot.
* test/lisp/calc/calc-tests.el (calc-matrix-determinant): New test.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Computing determinant and inverse for on some matrices containing
non-numeric elements failed or gave the wrong result.
Reported by Mauro Aranda.

* lisp/calc/calc-mtx.el (math-do-matrix-lud): Don't use zero as pivot.
* test/lisp/calc/calc-tests.el (calc-matrix-determinant): New test.
</pre>
</div>
</content>
</entry>
<entry>
<title>; * test/lisp/calc/calc-tests.el: Fix mistake in last commit</title>
<updated>2020-03-29T09:14:03+00:00</updated>
<author>
<name>Mattias Engdegård</name>
</author>
<published>2020-03-29T09:12:36+00:00</published>
<link rel='alternate' type='text/html' href='https://jason.zzq.org/git/emacs/commit/?id=93945fcd19bea4c044dcb45542086798cbdae6bc'/>
<id>93945fcd19bea4c044dcb45542086798cbdae6bc</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Calc: don't treat nil as an integer (bug#40155)</title>
<updated>2020-03-27T17:11:18+00:00</updated>
<author>
<name>Mattias Engdegård</name>
</author>
<published>2020-03-27T17:11:18+00:00</published>
<link rel='alternate' type='text/html' href='https://jason.zzq.org/git/emacs/commit/?id=c2b8ce4439935e2e158d4357d234135a251c5767'/>
<id>c2b8ce4439935e2e158d4357d234135a251c5767</id>
<content type='text'>
Make Math-num-integerp return false for nil, following Math-integerp
which was changed in the bignum reform.  This fixes a crash in
calc-graph-fast.

Reported by Narendra Joshi.

* lisp/calc/calc-macs.el (Math-num-integerp): Not true for nil.
* test/lisp/calc/calc-tests.el (calc-Math-integerp): New tests.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Make Math-num-integerp return false for nil, following Math-integerp
which was changed in the bignum reform.  This fixes a crash in
calc-graph-fast.

Reported by Narendra Joshi.

* lisp/calc/calc-macs.el (Math-num-integerp): Not true for nil.
* test/lisp/calc/calc-tests.el (calc-Math-integerp): New tests.
</pre>
</div>
</content>
</entry>
<entry>
<title>Update copyright year to 2020</title>
<updated>2020-01-01T00:59:52+00:00</updated>
<author>
<name>Paul Eggert</name>
</author>
<published>2020-01-01T00:19:43+00:00</published>
<link rel='alternate' type='text/html' href='https://jason.zzq.org/git/emacs/commit/?id=365e01cc9f64ce6ca947ccfd8612d60763280a37'/>
<id>365e01cc9f64ce6ca947ccfd8612d60763280a37</id>
<content type='text'>
Run "TZ=UTC0 admin/update-copyright $(git ls-files)".
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Run "TZ=UTC0 admin/update-copyright $(git ls-files)".
</pre>
</div>
</content>
</entry>
<entry>
<title>; * test/lisp/calc/calc-tests.el: Fix warnings</title>
<updated>2019-12-30T20:02:10+00:00</updated>
<author>
<name>Mattias Engdegård</name>
</author>
<published>2019-12-30T14:24:13+00:00</published>
<link rel='alternate' type='text/html' href='https://jason.zzq.org/git/emacs/commit/?id=9b6872b4e4fa782d9df313ab771c23ad1e7f8eff'/>
<id>9b6872b4e4fa782d9df313ab771c23ad1e7f8eff</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Calc: add missing dynamic variable declarations</title>
<updated>2019-12-26T18:37:10+00:00</updated>
<author>
<name>Mattias Engdegård</name>
</author>
<published>2019-12-26T18:37:10+00:00</published>
<link rel='alternate' type='text/html' href='https://jason.zzq.org/git/emacs/commit/?id=cd559841537726315d72a303447140f71e34f635'/>
<id>cd559841537726315d72a303447140f71e34f635</id>
<content type='text'>
* lisp/calc/calc-alg.el (math-simplify-only, calc-simplify-mode)
(math-expand-formulas, calc-poly-div-remainder)
(math-living-dangerously, math-simplifying, calc-angle-mode)
(calc-prefer-frac, math-poly-base-variable):
Declare dynamic variables.
* test/lisp/calc/calc-tests.el (calc-poly-div):
Add test for at least one bug caused by missing declarations.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
* lisp/calc/calc-alg.el (math-simplify-only, calc-simplify-mode)
(math-expand-formulas, calc-poly-div-remainder)
(math-living-dangerously, math-simplifying, calc-angle-mode)
(calc-prefer-frac, math-poly-base-variable):
Declare dynamic variables.
* test/lisp/calc/calc-tests.el (calc-poly-div):
Add test for at least one bug caused by missing declarations.
</pre>
</div>
</content>
</entry>
<entry>
<title>Spelling fixes</title>
<updated>2019-12-10T02:45:18+00:00</updated>
<author>
<name>Paul Eggert</name>
</author>
<published>2019-12-10T02:44:35+00:00</published>
<link rel='alternate' type='text/html' href='https://jason.zzq.org/git/emacs/commit/?id=d1a791f8edc1b8f2189b6f1b3be7b946fef1edbc'/>
<id>d1a791f8edc1b8f2189b6f1b3be7b946fef1edbc</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
</feed>
