I think that Rust is just a very successful experiment but its lessons will be borged into the main stream languages eventually. It's main problem is the bolt on parallelism due to its initial establishment as a single threaded css processor within Mozilla. Go has the parallellism built in far better but will also be borged in the long run. The reason is that languages like C++'s problems are unavoidable if you want to deal with the breadth. The alternative is that we will no longer have main stream languages but separation into niches.