Hacker News new | ask | show | jobs
by neonsunset 957 days ago
It's simple - the praise is predicated not upon Rust being good, but how comparatively shit everything else in the same category is: C, C++, higher level languages for system programming (Go is extremely inadequate, and slow).

Rust gets a lot, a lot of small things right. The things you usually use as an excuse as to why one language or another is better - I found Rust does much more of them in a good way. In most other languages you can have let's say good package management but not fast iterator expressions, or you have compile-time iterator expressions but they are ass to write and package management does not exist, or you have both but all other features are missing, and etc.

Arguably, because Rust is also verbose and sometimes a bit ceremony-heavy, it's not a perfect language, which is why I use C# daily (which is similar and familiar enough with the tooling, package management and critical features like generics and async). But when I need lean and mean applications, there is simply no reason to pick anything but Rust except maybe out of curiosity.

3 comments

Thanks neonsunset -- so there is this relativistic argument to be made in favor of Rust.

Previously, I'd been involved in writing up samples of a CLI tool in each of Golang, Ruby, Haskell, C++, Python, Java, Clojure. From there we would select one language ecosystem to marry ourselves to and move forward. Every single one left us wanting in terms of either team capability/emotional levels, language expressiveness, distribution, speed, tooling, package management, etc. And I learned here that Rust seems to have each of these down pat to satisfactory degrees.

Next time I'm faced with birthing yet another CLI tool, I thinks I'm gonna try Rust first.

With rust I can sleep at night. It's sooooo much easier to trust a compiler that is THAT pedantic and makes it its business to not let you do stupid things than something that can't even show if you will hit a nullptr.
I feel like shitting on golang is uncalled for if the systems you write can be done in C#.

I often see comments like this on hn, but In my experience golang works great and I'm writing real time systems with it.