Why C++ popular for game and HFT development?
These same reasons can be applied to high frequency trading:
For example, we might have layers such as rendering, physics, AI, gameplay, high level scripting, and the backend (which itself could be composed of one or several languages).
When people say “C++ is the best language for games”, they’re almost always either one of two things:
- Speaking specifically about low-level engine code like the rendering and physics subsystems.
- Naive and parroting what someone else has told them.
Low level systems are usually written in C++ because there simply aren’t a lot of alternatives, and of the few that exist C++ strikes a good balance between high performance and ease of use (when compared to, say, assembly language). The languages mentioned in the question details — Python, Java, and C# — are all high level languages that attempt to abstract away concepts like graphics hardware and memory management. But these ideas are critical in systems like physics simulation that need to be called constantly with a lot of complex calculations and calls to specialized hardware.