mercredi 24 février 2016
Robert O’Callahan appelle à tout réécrire en Rust
Robert O’Callahan est un développeur « vedette » de Mozilla dont nous avons déjà relayé les fortes prises de position. Hier, il a appelé sur son blog à un sursaut en faveur du langage Rust comme remplacement du C/C++. Rust, langage de programmation inventé chez Mozilla, lui semble le plus adapté pour en finir avec les failles de sécurité logicielle qui se succèdent inlassablement. Nous traduisons des extraits de son article ci-dessous :
Je viens de lire l’article de Dan Kaminsky sur la faille de glibc liée au DNS, et ses implications effrayantes. Malheureusement, ce n’est qu’une des très très nombreuses failles de sécurité logicielle qui ont fait de la sécurité informatique une plaisanterie.
Ce n’est pas un secret que nous disposons de la technologie pour éviter la plupart de ces bugs. Nous avons des langages de programmation qui garantissent quasiment que certains types de bugs ne se produisent plus. Le problème, c’est que la plupart de nos logiciels n’utilisent pas ces langages. Jusqu’à récemment, la bonne excuse était que ces langages « sécurisés » ne sont pas adaptés pour faire de la programmation système (…)
Rust change cette situation. Nous avons maintenant un langage avec des caractéristiques de sécurité qui donne le contrôle nécessaire pour la programmation système et n’impose pas d’environnement d’exécution. Sa communauté grandit et l’apprécie. Servo montre que de grosses applications complexes en Rust sont performantes.
Pour le bien de l’Internet, pour ne pas dire de l’humanité, nous devons migrer nos logiciels de C/C++ vers Rust (ou quelque chose de mieux) le plus rapidement possible.
(…)
Bien entendu, ce n’est pas forcément Rust qui l’emportera, mais c’est le meilleur candidat selon moi, à l’heure qu’il est.
C’est un travail colossal, mais considérons les coûts énormes, indirects ou directs, des failles que Rust aurait permis d’éviter.
Pour ma part, j’aime bien Rust, j’étais un peu hésitant en voyant l’aspect du code, mais c’est sympa et c’est la direction que je prends au lieu de retourner vers les C++ .
Si j’avais du temps les projets comme Redox sont très intéressant et je pense utile.
Refaire certain programme très ancien avec ce langage plutôt que de maintenir les anciens codes qui deviennent sur patchés et donc plein de comportement flou …
L’idée semble bonne mais est-ce que Rust peut s’imposer aussi largement que C/C++ ? Certains le refuseront par fierté, ou parce que c’est trop connoté Mozilla. Ce qu’on appelle le syndrôme NIH (Not Invented Here). Enfin quand on voit le succès inattendu de JavaScript, on peut se dire « pourquoi pas ? »