this post was submitted on 27 Apr 2024
108 points (96.6% liked)

Rust

5999 readers
26 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 1 year ago
MODERATORS
108
submitted 6 months ago* (last edited 6 months ago) by 1984 to c/rust@programming.dev
 

This was a really good summary of what Rust feels like in my opinion. I'm still a beginner myself but I recognize what this article is saying very much.

The hacker news comments are as usual very good too:

https://news.ycombinator.com/item?id=40172033

you are viewing a single comment's thread
view the rest of the comments
[โ€“] taladar@sh.itjust.works 2 points 6 months ago (1 children)

I haven't really written any Go but from trying to debug some issues in Go software and looking at the source code it seems to be the kind of garbage language that is write-only and likely most major projects written in it will take a full rewrite if you want to overhaul it for a new major version (as in the kind of major version where the code base changes significantly, not the kind where you just broke some minor API).

Honestly, I disagree, but I obviously haven't seen the code in question.

Go has a lot of really nice things going for it:

  • very simple syntax - you're not going to miss a bug because of something small
  • obvious error handling - no hidden exceptions to disrupt logic flow - Rust does this well too
  • lots of idioms, so deviations are obvious - e.g. channels for synchronization

My problem isn't with normal program flow, but that the syntax is deceptively simple. That complexity lives somewhere, and it's usually in the quirks of the runtime. So it's like any other abstraction, if you use it "correctly" (i.e. the way the maintainers intended), you'll probably be fine, but if you deviate, be ready for surprises. And any sufficiently large project will deviate and run into those surprises.