For the counting example and data races, it would be fairer if you also included a Julia package for correctly addressing the issue since you used rayon crate in the Rust example.
julia> using ThreadsX
julia> safe_count() = ThreadsX.sum(x->1, 1:10_000)
safe_count (generic function with 1 method)
julia> safe_count()
10000