A C Programmers take on Rust.

146 points TroyOfShow

Not my comment. Just want to know what you guys think on his critiques. Here's the link to the original comment. Otherwise, you can read the quoted text I pasted.

Edit: removed link because against the rules

"Rust: A very complex language that doesn't actually address the sorts of mistakes I make in C (mainly indexing mistakes). It's a high cost for no benefit to me. Essentially a worse C++. Correct programs cannot be compiled unless the borrow checker can prove their correctness, and that pushes towards a bad programming paradigm: managing lots of single allocations instead of group allocations. Very slow compile times. No true assertions, poor debug defaults, and only supports post-mortem debugging after panics(edit: turns out -C panic=abort allows proper debugging, something approaching C, even if the backtrace is annoyingly messy). Poor support for offline work since everything steers towards using Cargo packaging. Rushed into a non-sensical, poorly-designed, disastrous async design that they're now stuck with forever. An "unsafe" escape hatch that's too complex to use reliably. Poor backwards compatibility with tooling: Visit to the r/rust front page and try to build any project using a toolchain more than a few weeks old; it probably won't work. The language has only one mature implementation. The vast majority of real world Rust programs have massive, NPM-like dependency trees that depend on a centralized package index. In practice cross-compilation is even harder than C and C++ due to these dependencies (some high profile packages require Visual Studio for instance). The Rust community is obsessed with the bleeding edge and lacks a mature engineering culture. Rust programs are a very poor fit for distributions due to the community's poor engineering practices.\