Show HN: Rust but Lisp
Ce projet propose un frontend en s-expressions qui transpile du code Lisp-like directement en Rust sans runtime ni GC, en conservant la sémantique de Rust (ownership, emprunts, lifetimes, génériques, traits, etc.). L'objectif est d'explorer l'ajout des macros Lisp aux sémantiques de Rust plutôt que de fournir un compilateur de production, avec des limitations notées et des fonctionnalités manquantes prévues. Les macros sont des transformateurs d'expressions s-expression exécutés à la compilation et utilisent quasiquote, unquote et unquote-splicing pour faciliter les macros variadiques sans recourir à proc_macro. La syntaxe couvre structures, enums, impl, traits, closures, boucles, pattern matching, modules, visibilité, lifetimes et turbofish, et permet d'injecter du Rust brut pour les cas non couverts par le frontend. Le dépôt s'obtient sur GitHub et s'installe via cargo install --path ., avec des commandes fournies pour transpiler, compiler et exécuter des fichiers (.lisp → .rs → binaire).