3 ms·
I'm in a similar position as you were right now: a PhD student in HPC domain who really wants to/ needs to use C++ for everything ( I love Python but has now co
by shihab 3y ago
I'm in a similar position as you were right now: a PhD student in HPC domain who really wants to/ needs to use C++ for everything ( I love Python but has now come to terms with its limitations). Your last sentence is scary for me to hear- can you please elaborate a bit?
- dan-robertson 3y agoNot sure what the parent meant but I always think of https://travisdowns.github.io/blog/2019/08/26/vector-inc.html https://travisdowns.github.io/blog/2019/08/26/vector-inc.htm...
- jabl 3y agoOf all the commonly used languages, C++ is the most complex, baroque, and filled with subtle and not-so-subtle footguns. Of course with all that downside comes the upside that C and C++ are the lingua franca for low level programming where performance matters, not only HPC (yes, I hope Rust will be there one day, but I digress..). Fortran is pretty much limited to numerical computing, you're not going to find much Fortran libraries outside that domain. So if you envision doing programming like that outside HPC after your PhD, C++ might be worth the investment. But of course a lot comes down to what language other people in your group and your particular subfield, and what your supervisors are using. Doing a PhD is hard enough without being the odd guy out who's using a language nobody else in your community is using.
- cultureswitch 3y agoEver heard of Perl, PHP, JavaScript, sh or Fortran itself for that matter? Plenty of languages are far more "baroque" than C++.
- mathisfun123 3y agoIgnoring all the cliche comments about C++ complexity I'm gonna say something that is a controversial opinion of sorts: if you're a PhD student in CS and you're doing systems research and you can't write/read passable C/C++ then you shouldn't be allowed to graduate.
- noobermin 3y agoCS is NOT computational science or HPC (generally).
- mathisfun123 3y ago>you're doing systems research