I think everything is in place now for the numerical routines from
SLATEC. I've tested this mostly with CMUCL and some with Clisp. I
can't test with gcl, so I hope some can do that for me.
Notes:
o You might have to run config.status. Sometimes the dependencies
aren't built right or something and the files don't get compiled.
(I did not update clisp-depends.mk and cmucl-dpends.mk, assuming
that configure and/or make does that.)
o The error reporting routines used by SLATEC are included and do
appear to work. (Try gn(-20,60) for an example.) May want to
change the routines to be more lisp-like and maybe dump the user
into the debugger for those fatal errors which now just return back
to the top-level loop after printing an error message.
o The function in(x,n) always just returns unevaluated. I don't know
how to fix that. This doesn't happen in maxima 5.6.
What's next:
o Some more work needs to be done on computing the values via simple
analytic continuation.
o Maybe add the Bessel Y functions since the code is there. Maybe K
and Hankel functions too?
o More comments in the code.
o Add documentation to the manual on what these functions are.
o Add the new proposed names bessel_j, bessel_i, bessel_y, etc.?
o Maybe tell maxima about some of the properties of the Bessel
functions, like derivatives?
o Add access to the erfc function from maxima. Right now you can only
numerically evaluate erf, but erfc is usually more important to me.
o Replace the Gaussian rng with a better version from clocc.
Hope this is useful to someone,
Ray