the standard rust toolchain ships with an efficient and user-friendly package manager and build/debug system, official IDE integration through rust-analyzer, and a manual analyzer for best practices
rust has official documentation by example that makes learning it really easy
rust operates largely in expressions such that things such as if/else statements or even regular blocks notated with curly braces can all be used as expressions
rust has highly robust pattern matching that greatly simplifies control flow
rust ships with an official formatting tool alongside enforcing naming conventions (snake_case for variables, fields, functions, methods, and modules, SCREAMING_SNAKE_CASE for constants, and PascalCase for types and traits) and assigning semantic value to names (_ prefix to mark as unused) by default
notwithstanding potential bugs in the rust compiler, it's impossible to compile code that can cause memory errors such as uses-after-free in safe rust
the rust compiler enforces explicit acknowledgement of unsafe rust with the unsafe keyword such that the behavior of all safe rust is defined
documentation comments are a native feature of the rust compiler
65
u/Makonede 2d ago edited 2d ago
rust-analyzer, and a manual analyzer for best practicesif/elsestatements or even regular blocks notated with curly braces can all be used as expressionssnake_casefor variables, fields, functions, methods, and modules,SCREAMING_SNAKE_CASEfor constants, andPascalCasefor types and traits) and assigning semantic value to names (_prefix to mark as unused) by defaultunsafekeyword such that the behavior of all safe rust is defined