But for writing a non-temporary numerical routine Ocaml is superior since you can produce a type-checked, fast standalone executable efficiently thanks to the high-level programming offered.
This was the conclusion I reached almost 16-17 years ago while working on solving for optical train aberrations from point spread images. At that time we were stuck with RSI/IDL (a variant of Matlab, of sorts), and could not get past 5 or 6 degrees of freedom without havoc striking. We needed 150+ DOF.
So I sat down and learned about this new world of FPL and developed a tensor based optimization that worked the first time - once I finally got it all to compile. It wasn’t a huge body of code, perhaps 2-3 KLOC.
But my experience was so incredible that I wrote a short paper for Phil Wadler in the ACM proceedings. Couldn’t have come at this from a more distant place - astrophysics and missile borne IR sensors.
- DM