If Rust had abandoned borrow checking at the first sign of implementation difficulty, it would be Go with better error messages.