Rust isn't even that difficult, at least when comparing it to languages that fill a similar niche, like C++.
It's of course more difficult than higher level languages, but for a systems language it manages very well to balance ease of use with the power to code relatively close to the hardware.
Rust just has a "slight" entry barrier, with the Borrow Checker being a rather unique feature. Once one has surmounted that, it's surprisingly smooth sailing, because Rust doesn't have nasty surprises. Unless one intentionally does something stupid, the rule is "if it compiles, it works".
I started off this year with Go, and after the first three days, I was so happy to switch to Rust for today. It's one of my absolute favorite programming languages, but I never use it at work, so it's one of my joys of Advent of Code.
It's such a shame. Day 4 part 2 took me much longer to codify my idea in Rust correctly than I would like to admit.
I'm so tempted to switch to a simpler language, but I wouldn't learn Rust then.
The struggle is worth it
Rust isn't even that difficult, at least when comparing it to languages that fill a similar niche, like C++.
It's of course more difficult than higher level languages, but for a systems language it manages very well to balance ease of use with the power to code relatively close to the hardware. Rust just has a "slight" entry barrier, with the Borrow Checker being a rather unique feature. Once one has surmounted that, it's surprisingly smooth sailing, because Rust doesn't have nasty surprises. Unless one intentionally does something stupid, the rule is "if it compiles, it works".
I started off this year with Go, and after the first three days, I was so happy to switch to Rust for today. It's one of my absolute favorite programming languages, but I never use it at work, so it's one of my joys of Advent of Code.