|
From: Barton W. <wi...@un...> - 2023-04-26 11:10:43
|
This is likely a nothing burger, but: Line 2152 of the limit code has a comment “THIS IS HORRIBLE!!!!.” This line of code starts the process of evaluating a limit of an indeterminate form ∞ - ∞. Line 2152 calls the (poorly named) function cnv that standardizes a CL list of expressions to a limit point of ∞. A few lines later, the special variable val (the limit point) is locally set to inf. After that, one of the two (mysteriously named) functions rheur or sheur are dispatched (heur = heruristic?). One not so terrific thing about this code is that the fact database possibly has information in it about the special variable val that might be invalid after standardizing to a limit point of infinity. Is that the reason for the comment “THIS IS HORRIBLE!!!!”? A command line change of the function cnv to something silly such as :lisp(defun cnv (a b) (list 42)) results in eight testsuite failures, so the testsuite exercises this function somewhat. https://sourceforge.net/p/maxima/code/ci/master/tree/src/limit.lisp |