В Go после Раста стрёмно тем, что ты хочешь мувнуть значение в замыкание, а оно само неявно копируется. И вроде бы всё ок, но как-то не по себе.
Модель памяти гоу достаточно стандартная - happens-before и тп (Те ничего совсем нового там в принципе нет). Понятно что после rust уже привыкаешь что к тому что компилятор по рукам бьет если что не так. Чем меньше многопоточного кода у в программе (и он сосредоточен именно там где он нужен) тем программы проще поддерживаются. Приятно конечно скинуть часть работы на компилятор - но реальность такова что еще N-лет корректность большей части многопоточного ПО будет анализироваться в основном разработчиками, а не тулами