The first point is quite valid though. From "https://doc.rust-lang.org/reference/memory-model.html" where it says "Rust does not yet have a defined memory model"
this is not a language limitation, as the language is able to emit LLVM atomic operations just fine. like allocations, it needs people with a defined goal (like the kernel) to provide a target for implementations to reach; proäctive creation of a model without knowing if it has an audience is not worthwhile, which is why it hasn't been done