Rust has a complex semantics, not a complicated syntax. The syntax was explicitly chosen to be quite C/C++ like while streamlining some aspects of it (e.g. the terrible type-ascription syntax, replaced with `let name: type`).
In my opinion it has both complicated and terrible syntax that it inherited and extended from c++ and complicated semantics.
In my opinion it has both complicated and terrible syntax that it inherited and extended from c++ and complicated semantics.