| ▲ | skavi an hour ago | |
unfortunately, It Depends. different people struggle with different things. your existing experience is a major factor. there are a lot of concepts in rust that you may have already figured out in another language. personally, i started learning rust two years after i started programming. at that point i had basic experience with c, c++, and some assembly. i struggled with pretty much everything. i recall traits being particularly confusing. i’m not sure i fully got them until i messed with typeclasses in haskell at some later point. but, honestly, i don’t remember struggling too much with lifetimes. i think the compiler is pretty good at suggesting fixes for common issues. i think it was helpful that i knew what a pointer was and had debugged segfaults. also, i didn’t really have an existing way of structuring programs that i was trying to reconcile with rust. Box, Arc, and Rc you’ll figure out as you need them. you can think of them as tools which let you escape lifetimes. Pin you won’t need to think about for a very long time [0]. You should check out my guide [1] if you’re interested though :). There are many others. [0]: unless you’re the guy i’ve tasked with fully understanding FuturesUnordered as his very first introduction to Rust, lmao. [1]: https://github.com/soooch/async-intuition/blob/main/src/pin_... | ||