It depends on the problem domain, but it's been my experience across a few domains that many errors are of the "trivial" type you've described, in that recovering from an error by taking some alternative path is usually not very valuable. A bail-out-on-any-error approach doesn't necessarily mean it's a "toy program".
Nothing in Rust (or Go, even) ordinarily precludes the type of retry approach you're describing, of course.
Nothing in Rust (or Go, even) ordinarily precludes the type of retry approach you're describing, of course.