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

Not to be that guy who comes to Rust’s defense whenever Go is mentioned, but... Rust protects from a much larger class of errors than just memory safety. For instance, it is impossible to invalidate an iterator while iterating over it, refer to an unset or invalid value, inadvertently merely shallow copy a variable, or forget to lock/unlock a mutex.


If only these were common problems that were difficult to otherwise avoid.


I like Rust, but I think this post is unfairly downvoted. Rustaceans often annoyingly point out that "you can't use super-common-footgun X with Rust!" which, while true, they also omit the compromises made are immense (frankly, compiler performance is one of them).


The parent did not mention any of these compromises, beyond claiming that they are uncommon (which is untrue for many domains)


They are uncommon in many languages though that don't require Rust's type system, such as functional languages that simply pass values around and nothing else.


Nah, bringing out this argument in any thread that dares to mention whatever the commenter dislikes is just plain old off-topic. Go threads get people complaining. Rust threads get people complaining. The complaining is not a great addition to the discussion.


Does it really have to be either or?

I get the feeling that spending a lot of time in Rust makes you believe not having that kind of backup is madness.

Yet programmers all over the world get by just fine without it.

And it's not free by any means, there's a fair bit of a learning curve and increased effort involved.

Can't hurt the language to take these problems seriously, can it?


Rust feels like wearing a giant bubble just to go outside safely.

C++ feels like driving a car. Dangerous but doable and often necessary and usually safe.

(Forth feels like being drunk?)


Any non-trivial C++ program includes unchecked int casts




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

Search: