As I said, Rust is not a lowest-level language. The fact that it needs the LLVM and compiles to an intermediate representation should tell you that. The memory safety is only possible, because the LLVM provides an abstraction of the hardware. And even then, somebody though there is a need for the 'unsafe' keyword.