An even more ambitions project than GSL, would be to try and tap into PETSc (Portable, Extensible Toolkit for Scientific Computation)!
PETSc provides a nice collection of solvers, matrix preconditioners etc., beyond what Lapack2 offers and presumably much higher performance than calling R through RServer. Unfortunately this appears more complex than simply calling a DLL: typical usage is apparently to write code in C and use the PETSc compiler mpicc which hides most of the uggly linking issues from the C backend compiler. PETSc can parallelize calculations over multiple processors, using OpenMPI for communications; I guess this might be hard to exploit in J? Python has bindings to PETSc, so somehow something should be possible... Maybe a reasonable starting point would be to export matrices to HDF5 or netCDF (via R or using text and command line tools to start off with), and prepare the PETSc transformations in C or Python :-(, in a strongly decoupled way. But it would be so much nicer to be able to be able to do it all from J (even if this means using a single thread). Maybe it could even convert some users to J. De : Scott Locklin <[email protected]> À : [email protected] Sujet : Re: [Jprogramming] GNU Scientific bindings? Date : 01/03/2021 21:19:53 Europe/Paris Kind of curious: what is compelling about GSL? I ported a few things from it to a Lisp that had partially completed bindings, mostly because it was already basically there, but it's generally a trashfire of very little utility to a language like J which already has most of it built in. For example, while I am not aware of any simulated annealing J gizmoes, differential evolution is almost always a better algorithm for metaheuristic optimizers and it is implemented here: math/deoptim . It worked the last time I checked! Was pretty fast too. -SL ---------------------------------------------------------------------- For information about J forums see http://www.jsoftware.com/forums.htm
