this post was submitted on 15 Mar 2026
64 points (97.1% liked)

Rust

7855 readers
88 users here now

Welcome to the Rust community! This is a place to discuss about the Rust programming language.

Wormhole

!performance@programming.dev

Credits

  • The icon is a modified version of the official rust logo (changing the colors to a gradient and black background)

founded 2 years ago
MODERATORS
 

I recently started learning rust, and I was ready for one hell of a fight. I heard all those horror Storys about the compiler complaining about every single detail and that developing rust means having a constant fight with the compiler about seemingly irrelevant things. However, so far I have to tell, that while its somewhat true, that the compiler is somewhat picky, it is incredibly helpful. Never before have I seen such good and helpful compiler messages. It not only says what you did wrong, but also gives direct help on what to do to fix your code. I also really like, that it gives you direct references to the rust book in the compiler messages.

Prior to starting my journey with rust I did quite a lot of python, some C and some bash and their interpreter/compiler messages are nothing when comparing them with rust. Especially the bash error messages are awful if you do not know what they mean and how to fix them.

you are viewing a single comment's thread
view the rest of the comments
[โ€“] solrize@lemmy.ml 2 points 16 hours ago* (last edited 16 hours ago) (1 children)

Haskell is also extremely picky about programs though GHC's error messages are notoriously confusing. Basically they say "error at line 123" with a bunch of incomprehensible spew saying what the error is. So you ignore the spew, look at line 123, and squint til you figure out what is wrong. In practice that method actually works once you get used to it. C++ is kind of similar IME.

You might also give Ada a try. Its goals overlap Rust's and I'd like to have some familiarity with both.

Based on your mentions of Python and bash, I'd say spend more time on languages with serious type systems. Rust, Haskell, Ada, ML, and maybe pointy headed languages beyond Haskell.

The lack of a strict type system is, what drives me away from python (there is a lot of other stuff I also dont like, but its lack of a type systems is one of the biggest reasons). My first language was Java, which I learned during highschool and while I thought that the strict type system was annoying, working with Python made me realise how much I hate not having a strict type system. In every god damn function you have to manually check for the type you received to make sure everything works as expected.