Everything that people find great on Rust with exception of the borrow checker, can be found in any compiled language from ML linage. And even that is fading away as they introduce a mix of linear types, dependent types, effects and formal logic.
Everything that people find great on Rust with exception of the borrow checker, can be found in any compiled language from ML linage. And even that is fading away as they introduce a mix of linear types, dependent types, effects and formal logic.
The situation is a little more complicated than what I just wrote because two programs written in different ML-style languages could communicate via inter-process communication. But I don't see that. (Maybe my experience is not broad enough?) What I see is, e.g., Python libraries written in C and C++ (and Fortran, which is also not memory-safe) for performance reasons where the only memory-safe language that could have been used instead is Rust.
Likewise those Python program should have use a dynamic managed compiled language, like Common Lisp or Julia, which was originally designed exactly to avoid that.
Maybe one day replaced by Mojo, if they get lucky with it.
Too many devs see a specific language as their solution for everything, and when it doesn't fit we end up in such sandwiches.
I agree. I also find that a lot of software should have this mindset anyways so Rust is a great fit for that domain. Anything that others depend on should be high integrity and memory efficient.
Not to mention the ecosystem is very wide in Rust. Other ML languages may not have what one needs.