3 ms·
Rust is really appealing for applications with native code. C/C++ is still responsible for somewhere between 20 and 50% of software depending on who you ask an
by lumost 5y ago
Rust is really appealing for applications with native code. C/C++ is still responsible for somewhere between 20 and 50% of software depending on who you ask and how you count. These languages have a ton of legacy to deal with and persistent tedious memory leaks which introduce security issues etc.
Rust doesn't have these issues owing to the "newness" of the language and the memory model. If you're are a C or C++ dev then this is very exciting. If you are an engineer who was always turned off of native coding due to C/C++, then this is very exciting. If you just like languages, then this is pretty exciting to.
- zozbot234 5y agoNot just native code either, Rust also makes WASM development practical in a way few other languages can.
- lumost 5y agoThat is one of the appeals of rust for me. I want one language that I can flip from - Native - Web - Distributed - ML - Service programming without having to switch toolchains. Rust is surprisingly close to achieving this.
- hcabral 5y agoThis is indeed an interesting point. I've worked with C/C++ and every single project or experience had some peculiarity: the platform, the compiler, some version limitation, etc.
- cyber_kinetist 5y agoFor that I see it as a matter of tooling more than the language design: wasm is nicely integrated into cargo and is maintained far better than other choices. You can also compile C/C++ to WASM if you want (and the language semantics definitely allows for it, since it doesn't have a garbage collector), but you just really don't want to deal with CMake while doing so.
- jatone 5y agogarbage collector isn't a limiting factor for wasm. my main issue with wasm is no standard interopt for primitive types. thankfully some sort of FFI is in the works from my understanding.
- cyber_kinetist 5y agoIn theory yes, but in practice managed languages need native GC support because garbage collectors in WASM code are quite slow. There's a proposal in the works: https://github.com/WebAssembly/gc/blob/main/proposals/gc/Overview.md https://github.com/WebAssembly/gc/blob/main/proposals/gc/Ove...