L’usage de l’IA dans le codage est en pleine expansion, mais s’en servir pour aider à la création d’un langage informatique n’est pas banal. C’est pourtant ce que vient de faire Steve Klabnik, développeur connu pour ses contributions à Rust et Ruby on Rails. Il a présenté dans un blog sa dernière création avec l'appui de Claude d'Anthropic, le langage Rue. Dans un échange avec The Register, il explique que ce nom a été choisi, car il voulait un nom qui débute par Ru (après Ruby on Rails et Rust). Il souligne que Rue peut signifier « regret » en anglais, mais fait aussi référence à une fleur.
Dans le blog, Steve Klabnik présente Rue comme un langage de programmation système open source qui vise à garantir la sécurité mémoire sans ramasse-miettes ». Il ajoute « offrir une ergonomie supérieure aux langages comme Rust et Zig ». En codage, le ramasse-miette désigne la gestion automatique de la mémoire avec des risques de sécurité souvent mis en avant. Ce point est particulièrement sensible entraînant la mise au banc par les autorités américaines des langages C et C++ ne sécurisant pas assez la mémoire. Elles poussent à utiliser Rust, mais comme l’indique Steve Klabnik, la courbe d’apprentissage du langage est relativement complexe. Rue vise à réduire cette problématique sans pour autant donner de détails. A noter que Rue est majoritairement écrit en Rust.
Des premiers tests concluants
Dans un article, le développeur est revenu sur l’usage de l’assistant IA d’Anthropic pour créer le langage Rue. Il souligne en préambule que « la conception et l'implémentation d'un langage sont un travail d'équipe » et que le travail nécessaire actuellement est colossal « gestionnaires de paquets, linters, LSP, intégration avec un éditeur,… ». Puis, il indique qu’en 2025 il a changé son point de vue sur les LLM en les jugeant utiles dans certains cas. Après différents tests, il s’est posé la question « et si Claude pouvait écrire un compilateur ? ». Il a effectué une première tentative qui « s’est plutôt bien passée, mais a aussi un peu déraillé » avoue-t-il. Après avoir travaillé pour mieux maîtriser et optimiser le LLM, il a tout recommencé à zéro pour un second essai qui « s’est beaucoup mieux déroulé ».
Les articles suivants concernant l’état d’avancement du projet ont été rédigés par Claude. Il donne les différentes étapes et les fonctionnalités mises en place. On note la mise en place de tests de spécifications, des choix architecturaux pour le backend (au départ Rue était compilé sur Linux x86-64 et Steve Klabnik voulait qu’il le soit sur MacOS), l’identification des erreurs… L’objectif de la première semaine était de construire les fondations du langage. En deuxième semaine, le projet s’est focalisé sur la question de la gestion de la mémoire sans ramasse-miette en se basant sur des types affinés avec une valeur sémantique modifiable. Dans son échange avec nos confrères britanniques, Steve Klabnik reconnaît les atouts de l’IA pour des petits projets, mais « pour des initiatives plus importantes la connaissance du génie logiciel est primordiale ».

Commentaire