Par rapport à d’autres langages de programmation, le principal avantage de Rust réside dans sa sécurité qui est notamment obtenue grâce un traitement particulier des erreurs. Si une erreur survient lors de la compilation et ne peut être corrigée, la célèbre macro « panic! » se déclenche. Elle permet d’arrêter le programme et fournit un message d’erreur, afin d’éviter tout dommage.
Par ailleurs, la gestion de la mémoire est considérée comme particulièrement sûre. En effet, Rust présente l’avantage de réussir à obtenir une « memory safety » sans « garbage collector ». Dans de nombreux langages de programmation, la mémoire a pendant des années été une faille appréciée par les hackers. Une mémoire pleine entraîne une erreur dans le système qui peut être exploitée par les hackers. Pour éviter cela, un « garbage collector » permet de supprimer les objets non utilisés dans la mémoire. Toutefois, celui-ci ralentit également l’exécution du code. Le compilateur de Rust rend obsolète un tel « garbage collector ». Il vérifie dès la compilation si une erreur est susceptible de survenir dans la mémoire sans pour autant impacter la performance. Rust est un langage destiné à la programmation de systèmes à l’instar de C/C++ et fournit la même rapidité lors de l’exécution. Cette dernière est d’une part liée à l’absence de « garbage collector ». D’autre part, les « zero cost abstractions » permettent une vitesse élevée pendant les temps de fonctionnement. Ce terme signifie que l’on peut programmer de façon abstraite sans avoir à compromettre la performance pour obtenir ce confort.
De ce fait, Rust est un mélange entre des langages de programmation haut niveau et bas niveau. De façon similaire à C/C++, Rust est très proche du matériel – offrant ainsi une vitesse élevée –, mais permet une programmation relativement facile à l’instar des langages haut niveau.
Enfin, novices comme programmeurs expérimentés pourront rapidement prendre leurs marques dans Rust. Dans son utilisation, ce langage se démarque peu de ses alternatives les plus connues. Toutefois, la qualité de conception des messages d’erreur constitue un avantage considérable. Alors que d’autres langages de programmation ne renvoient que des erreurs cryptiques, Rust fournit des informations utiles et pertinentes sur la façon de corriger l’erreur.