There won’t be one ultimate language. The difference between low-level and high-level languages is significant. High-level languages allow you to not have to worry about intricacies of memory layout mostly, and thus even changing the data structures you use will not result in a refactor. While using low level languages, even ones like rust, you can change the allocation strategy/memory layout of your data structure, but you will need to refact on it. So it is a tradeoff between ease of code base change, and tight control on memory/resource usage.