3 ms·
Somebody mentioned Clojure, which is a great language but has some baggage. If she's coming from a rigorous background, I highly suggest Scheme and the book St
by rmaccloy 17y ago
Somebody mentioned Clojure, which is a great language but has some baggage.
If she's coming from a rigorous background, I highly suggest Scheme and the book Structure and Interpretation of Computer Programs (SICP: http://mitpress.mit.edu/sicp/. http://mitpress.mit.edu/sicp/.) For some people using a language with more batteries (and thus instant gratification) is better to learn programming, I think, but for learning to think about computation I think Scheme is pretty hard to beat.
Scientific programming might mean C/C++ (that's where the fast math libs are, to be sure), but it might mean Matlab or Forth or lots of R, who knows.
- gamache 17y agoThe fastest math libs are in Fortran. You can get close in C/C++, but the everything-is-a-pointer philosophy of C gets in the way of some compiler optimizations that are available in Fortran. (Wasn't there something posted to HN about this in the last couple of weeks?) The penalty is that you must use Fortran, though. If the app does anything besides crunching numbers, most people would choose a more comfortable language, or just write the crunchy bits in Fortran and use a FFI if they're ambitious.
- rmaccloy 17y agoIndeed. (I mentioned Fortran in one of my replies above.) As far as I know, Fortran isn't used much for new development projects, though; I hear more about using the C interfaces to LAPACK or whatnot even in very crunchy (e.g. genome) apps. Far from a complete survey, I could be wrong. :)