My N-bits on the subject (speaking as an amateur maintainer and occassional developer of lisp-matrix, and doing a bit of non-lisp numerics/informatics/computation professionally):
I'd probably go with GSLL if you need to "get the job done" , it has a range of numerical domains implemented (but requires GSL, algorithms/implementations are reasonable but not always world-class).
Matlisp works, is stable, but needs a bit of cleanup/refinement/refactoring, and requires Lapack and a few other Fortran libraries, and uses it's own FFI approach for Fortran. I wish it had a Fortran-front end for CFFI implemented. But "it works".
linear-algebra (on github, and see recent posts) looks like a clean package, lisp-only, and so far I like it very much, but havn't had as much experience with it as I have with the other 3 you mention, so havn't had time to suss-out any issues. I don't recall if it has quad-programming, if not you'd have to add on the quad-programming algorithm, but that isn't too hard (i.e. following a journal article, for an undefined "hard").
You could also go via R, through RCL (works well) or RCLG (which I maintain), and the quad programming packages for that system. Highly recommend R as a non-lisp system for scientific computing. It's only fault is that it isn't common lisp.
Lisp-matrix is a work in progress. As much as I'm fond of it, I have a hard time recommending it.
best, -tony
On Mon, Apr 18, 2011 at 10:38 PM, R. Matthew Emerson rme@clozure.com wrote:
What's the state of scientific computing libraries in CL?
There appear to be numerous projects that address this particular area at different levels:
- GSLL: http://common-lisp.net/project/gsll/
- Matlisp: http://matlisp.sourceforge.net/
- lisp-matrix: http://common-lisp.net/project/lisp-matrix/
and certainly more.
If anyone on the list works in this area, I'd be interested to hear about what libraries you are using. If you'd care to share any pros and cons, that would also be appreciated.
(As a bit of an aside, I will mention that one particular area of interest is quadratic programming.
The package at http://sigpromu.org/quadprog/ package looked interesting, but it doesn't come with source any more, and is meant to work with Matlab.
If by some chance someone is familiar with this area, perhaps you could offer some recommendations?
Pretty much anything with a C header file would be pretty easy to use.)
pro mailing list pro@common-lisp.net http://common-lisp.net/cgi-bin/mailman/listinfo/pro