Rust est un langage de programmation compilé multi-paradigme conçu et développé par Mozilla Research. Il a été conçu pour être « un langage sécurisé, concurrent, pratique », supportant les styles de programmation purement fonctionnel, modèle d’acteur, procédural et orienté objet. Le langage s’est développé à partir d’un projet personnel du développeur en chef Graydon Hoare.
Rust repose sur des concepts connus et éprouvés (d’où le nom Rust, « la rouille » en anglais) et n’intègre pas de concepts nouveaux et non testés. Ces concepts ont été empruntés à des langages de programmation existants et assemblés dans un seul langage:
- – Orientation bas niveau avec gestion de la mémoire en pile et en tas
- – Sécurisation des accès à la mémoire par une sémantique de mouvement associée au typage
- — Accès mémoire validés statiquement par le compilateur
- — Gestion de la concurrence intégrée dans le langage
- – Distinction de l’arborescence des structures de données et de l’arborescence objet
- — Hiérarchie des méthodes d’objets basée sur le système des « trait » et supportant un haut niveau de généricité
- — Structures de données permettant un filtrage par motif puissant