Un projet logiciel nommé cljys, publié récemment sur une plateforme de développement collaborative, propose une chaîne de transpilation originale du langage Clojure vers YAMLScript. L'outil se décrit comme une « chaîne d'outils pragmatique » qui utilise un passage front-end de normalisation par grand modèle de langage (LLM) pour compiler de manière sécurisée des requêtes Lisp expressives en binaires natifs, sans surcoût, destinés à l'analyse de représentation intermédiaire sémantique (semantic IR analysis).

Fonctionnement et architecture Selon la description du projet, cljys repose sur deux piliers techniques : d'une part, un « front-end canonique » tirant parti d'un LLM pour normaliser le code source Clojure en une forme standardisée ; d'autre part, l'exécution du résultat via SCI (Small Clojure Interpreter), un interpréteur Clojure léger et embarquable. Cette combinaison vise à concilier l'expressivité du langage Lisp avec la déterminisme et l'efficacité de binaires compilés, tout en garantissant une sécurité renforcée grâce à la phase de normalisation.

Objectifs et cas d'usage Le projet met en avant la capacité à « compiler de manière déterminée » les requêtes Lisp, ce qui suggère des applications dans le domaine de l'analyse statique de code, de la vérification formelle ou encore du traitement de données sémantiques. La production de binaires natifs « sans surcoût » (zero overhead) indique une optimisation poussée pour des environnements où les performances sont critiques. Enfin, la mention d'une analyse de « représentation intermédiaire sémantique » laisse entrevoir une intégration possible avec des outils de raisonnement automatisé ou d'intelligence artificielle.

Contexte technique YAMLScript est un langage de programmation qui utilise la syntaxe YAML, conçu pour être à la fois lisible par l'homme et exécutable. Le choix de Clojure, un dialecte Lisp moderne tournant sur la machine virtuelle Java (JVM), apporte une riche bibliothèque de structures de données immuables et de fonctions de haut niveau. En transposant du code Clojure vers YAMLScript, cljys pourrait faciliter l'interopérabilité entre ces deux écosystèmes.

Le recours à un LLM pour la normalisation est une approche inhabituelle dans le domaine des transpileurs, où des analyseurs syntaxiques classiques dominent. Cette méthode vise à gérer les variations stylistiques du code Clojure tout en préservant la sémantique, une tâche pour laquelle les modèles de langage modernes montrent des capacités prometteuses.

Perspectives Bien que le projet soit encore jeune (aucune version stable n'est annoncée), sa conception originale suscite l'intérêt des développeurs travaillant à la croisée des langages Lisp et des outils d'analyse sémantique. La combinaison LLM + SCI pourrait ouvrir la voie à de nouvelles applications dans la compilation dynamique et l'analyse de programmes.