Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

I've been experimenting with Go recently, with Rust still on my to-do list. I really like the simplicity of Go, with a fairly small language of constructs that combine powerfully.

Having learned SML / Haskell in the past I've got a bit of a soft spot for languages that are utterly cruel to you with their compilation errors but lead you straight to bug-free code. What I've heard about Rust puts it in this camp.

One thing that does concern me about Rust: when I (now and then) look at what's changing in C++ it feels like a lot of new mechanisms and abstractions are required to address problems created by previous design decisions. I sometimes read about Rust and worry that I might need to embark on a similar journey.



Not to mention the unstable and fast-moving nature of its development.

https://drewdevault.com/2019/03/25/Rust-is-not-a-good-C-repl...


> C has a spec. No spec means there’s nothing keeping rustc honest.

Can you find the flaw in this statement?

No spec doesn't mean there's nothing keeping rustc honest, it just means there isn't a spec keeping rustc honest.

> Any behavior it exhibits could change tomorrow.

And pigs could fly tomorrow as well. This is not a serious engagement with the ways the Rust developers go to great pains not to change behavior (such as crater runs). In many ways empirical evidence like crater is more valuable than some random document that might or might not be fully obeyed at any given time.

> That they can’t slow down to pin down exactly what defines Rust is also indicative of an immature language.

Rust has slowed down a lot, just not to Drew's liking. And he isn't acknowledging the ways in which the risks of moving fast(er than he would like) are mitigated.

> Safety. Yes, Rust is more safe. I don’t really care. In light of all of these problems, I’ll take my segfaults and buffer overflows.

Please leave the software industry. This is embarrassing.

> I especially refuse to “rewrite it in Rust” - because no matter what, rewriting an entire program from scratch is always going to introduce more bugs than maintaining the C program ever would.

What evidence is there for this position? My contention is that a Rust rewrite would maybe not start that way, but rapidly exceed the C version in quality because it is just a more modern language.


Many of Rust's new "features"—for example GATs—are really more removing restrictions. Code you would try to write, and then be surprised to learn it wasn't possible.


Rust compilation is strict but not cruel. The suggested fixes associated with compilation errors are very friendly to beginners (one notable exception is errors around lifetimes).

Your concerns regarding "feature creep" are reasonable and would be expected for a language trying to displace C++.

Edit: grammar




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: