As someone who doesn't know about C++ and Rust, can you elaborate on that?
As someone who doesn't know about C++ and Rust, can you elaborate on that?
C++ still wins down on available compilers, supported hardware and OSes, IDEs, debuggers, libraries, GUI tooling, SIMD, GPGPU, industry certifications for critical systems, ...
For example AUTOSAR just recently moved away from C to C++14 as suggested language for car computer systems, imagine how long it will take for them to suggest other language.
If you prefer to be more specific, generics in Rust are still not as powerful as in C++, lacking const parameters and HKT, although they are coming.
Also compile time code execution is not yet supported, although quite a bit can be achieved with macros.
Cargo is great, but C++ also has conan and vcpkg, eventually a standard one will emerge.
http://www.klabbers.nl/c/dependency-management-for-c/
Also I do have an issue with Cargo's lack of support for binary libraries.
ADTs, while not as good as in ML languages, at least there is std::variant.
I kind of mentioned explicit unsafe when I refereed to the safety enforced at language level instead of conventions and sanitizers.
Pattern matching is a great feature across all ML based languages, there were already some attempts to add it to the C++ as well.
http://open-std.org/JTC1/SC22/WG21/docs/papers/2016/p0095r1....
One of the things Rust should focus on as productivity improvement is making that migration as easy as possible.
Right now I cannot justify from business perspective replacing C++ with Rust on the workflows we still use C++ for.
But it doesn't mean that C++ as good as Rust. It's just wrong.
The whole eco-system and community around a language is what defines it.
To give a more explicit example, until it reaches parity with C++ on .NET/UWP tooling, it just means less productivity in spite of being a technically better and safer language.
That said, you should use tech that you’re happy with.
> That said, you should use tech that you're happy with
Yea this summarizes what I was going for originally. Newcomers may benefit more learning Rust (I don't actually know this for sure).