Magpie — un langage de programmation conçu pour permettre aux LLM d’écrire du code parfaitement du premier coup
(magpie-lang.com)Présentation du projet
Magpie est un projet open source qui se présente comme « le premier langage de programmation conçu pour les agents IA ». Alors que les langages existants sont optimisés pour le confort de frappe des humains, Magpie est optimisé pour la génération de code par les LLM. Sa philosophie centrale est « l’élimination de l’ambiguïté ». En Rust ou en TypeScript, a + b oblige à déduire s’il s’agit d’une addition d’entiers ou d’une concaténation de chaînes, ou encore s’il faut paniquer en cas de dépassement de capacité. Dans Magpie, en revanche, toutes les opérations sont décrites explicitement, comme i.add { lhs=%a, rhs=%b }. Il n’existe aussi qu’une seule méthode de branchement, cbr/br, et le transfert de propriété mémoire est lui aussi exprimé par des opérations explicites. L’argument central est que « moins il y a de choix, moins il y a de points de décision pour le LLM, et moins il y a d’erreurs ».
Explication
En interne, le langage adopte une syntaxe SSA (Static Single Assignment) et est compilé en code machine natif via LLVM. La gestion de la mémoire combine l’ARC (Automatic Reference Counting) et des règles explicites de propriété à la Rust afin de garantir la sûreté sans GC. D’après les benchmarks publiés, le temps de compilation est de 155 ms, plus rapide que Rust (234 ms) et TypeScript (268 ms), la vitesse d’exécution est identique à celle de Rust avec 32 ms, et l’utilisation mémoire n’est que de 1,6 Mo, soit bien moins que TypeScript (69,2 Mo). En particulier, sur l’indicateur de complexité lexicale (Vocabulary Complexity), qui reflète la prévisibilité pour les LLM, Magpie atteint 0,107, soit environ la moitié de Rust (0,225) et TypeScript (0,231).
Cela dit, Magpie indique lui-même qu’il « utilise environ 2,3 fois plus de tokens que les langages existants », ce qui implique un compromis du point de vue du coût des appels LLM. Selon qu’on considère plus important de réduire le nombre de nouvelles tentatives lors de la génération de code complexe par des agents IA, ou d’optimiser l’efficacité en tokens, l’évaluation de sa pertinence pratique peut varier. Le projet est construit avec Rust et peut être installé via cargo build.
git clone https://github.com/magpie-lang/magpie.git
cd magpie
cargo build -p magpie_cli
Aucun commentaire pour le moment.