Because of the minimal standard library, the ecosystem is fractured into crates (similar to npm).
Also, rust forces you to actually model the complexity of the real world. I think the best example for this are the various string types. There is one for Interop with C, one for Paths, one that is utf-8 etc. Your code explicitly states what to do with edge cases. Edge cases that existed anyway but are now visible.
Don't get me wrong, I don't dislike Rust. It's an awesome language.
Also, rust forces you to actually model the complexity of the real world. I think the best example for this are the various string types. There is one for Interop with C, one for Paths, one that is utf-8 etc. Your code explicitly states what to do with edge cases. Edge cases that existed anyway but are now visible.
Don't get me wrong, I don't dislike Rust. It's an awesome language.