3 ms·
> choosing it for a new project borders on malpractice Did it multiple times recently and I’m fairly confident in my choice. Here’s the main reasons. 1. Inter
by Const-me 6y ago
> choosing it for a new project borders on malpractice
Did it multiple times recently and I’m fairly confident in my choice. Here’s the main reasons.
1. Interoperability. If you’re writing a web service which only needs TCP sockets and local files, standard libraries of all modern languages get you covered. However, many desktop applications need to consume large C or C++ APIs implemented by operating systems. Maintaining FFI wrappers is expensive in the long run.
2. Library ecosystem. For HPC only Fortran has comparable one, for game development only C# has. The rest of the languages aren’t even close for these areas.
3. SIMD intrinsics are awesome for performance. They slowly appear in other languages, but so far, the support in C and C++ is just better. Probably because the support is first-party, by Intel and ARM.
4. Tooling is good. I use debugger, CPU and GPU profilers almost every day.