Out of curiosity, what is your background and experience?
I'm a professional engineer that has been using C and other languages since 1981, and been designing and implementing systems ranging from low-noise analogue electronics and RF, through soft and hard realtime digital+software systems, to high availability telecoms systems. Hence I do have considerable experience in such systems work,
and how they can fail.
Agreed, but neither should they stay with something when something better is available. For example, I was once offered a job in a company that made core memory when semiconductor memory was available!
You imply the difference between Rust and C++ is like the difference between core and semiconductor memory?
So with Rust your memory needs a tiny fraction of the space?
So with Rust your memory becomes thousands of times faster?
So Rust makes your memory super cheap?
I don't imply that, so those statements are irrelevant.
As software engineering is not a physical device, the somewhat physical thing here is the engineer. And you say if this engineer is using Rust he will get these dramatic improvements?
Yours are the typical cheers of someone wanting to suggest a benefit to people - if they believe him - that never can materialize.
I don't understand what you are trying to say, but it looks like there are strawman arguments there.
You miss a critical point: presuming it is even possible that can only be achieved in a subset of C++. And every person/group/company chooses a slightly different subset.
Now try to guarantee your program's properties when using libraries from 10 different sources - you simply cannot.
They can choose, what is wrong with that?
The problem is that people make poor choices, some of which can be avoided by using a better tool.
It seems Rust only limits these choices, you say it is only for the "good", but maybe too intrusive or limiting, i don't know.
So you imply engineers are too stupid or lazy to deal with their freedom and responsibility to install proper coding guidelines and proper tools themselves,
That is indeed the evidence from the real world.
Read comp.risks.
Every software and hardware engineer should do that, since it is low volume, carefully curated, and full of high quality examples from
very experienced
professionals.
Pay attention to technical news reports.
Look at the CERT advisories.
Very few people understand all the implications of all the various sections in all the various C and C++ standards. Those that do understand them have to spend far too much time working around boring low-level problems
caused by the tools. It would be far better if they used their intellect to address problems
inherent in the application they are creating.
This is quite pretentious, you know?
I expect English is not your first language.
And why do you think over time (or even already) the available libraries in Rust will not just become quite similar, have similar problems, because after all it is more about the people doing them, not the slight variation of a language these are coded it in?
I anticipate that, over time, there will be problems with such libraries. But they will be
new problems associated with being able to address applications that are not very practical in existing languages - especially those related to networking and NUMA multicore processors.