* Memory safety, which prevents crashes and security vulnerabilities.
* Thread safety, which enables improved performance via parallelism.
* High expressiveness.(rather subjective whether this is actually a good thing)
* A great community.
There are also technical challenges.
* Compile times are currently very slowand compilation uses too much memory.
* Crossing the C++/Rust boundary layer can be difficult, and is relatively slow due to no inlining.
** Bindgen can be tricky, especially working around clang bugs in different versions and on different platforms