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

People have covered a lot of the rational reasons, so here's an emotional one.

I've been coding a bunch of Rust lately, and I'm happy to discover it has my favourite thing from Haskell: the "if it compiles it's usually correct" feeling is wonderful. My software feels rock solid to me, even while it's being heavily changed.

It almost certainly translates into more reliable software, but even just the feeling is enough to hook me.



I agree. Once you understand typechecker error messages a little bit, refactoring becomes very simple (and fun!).

1. change a core type or function 2. fix all the type errors 3. yay

This is wonderful. I think the tradeoff is that you start a new system, you have to delay running the code for a while. Until you have your core. (Fortunately there is undefined :: a for such uses.)




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

Search: