glojure - Interpréteur Clojure hébergé sur Go
(github.com/glojurelang)- Un interpréteur Clojure conçu comme un langage "hosted" plutôt qu’une autre implémentation de Clojure basée sur Go
- Prend en charge une interopérabilité extensible, permettant d’utiliser toutes les valeurs Go comme valeurs Glojure, et inversement
- Offre un accès facile aux bibliothèques Go, comme Clojure accède aux frameworks Java
- Prend en charge deux modes : un outil CLI autonome (
glj) et l’intégration dans des applications Go- Lors de l’intégration : ajout de configuration scriptable, extension via des plugins Clojure, et possibilité de combiner les performances de Go avec l’expressivité de Clojure
- Prend en charge les appels bidirectionnels Clojure ↔ Go : appeler des fonctions Go depuis Clojure et des fonctions Clojure depuis Go
- Inclut par défaut de nombreuses interop avec la bibliothèque standard
- Pour éviter les ambiguïtés de namespace, remplace le
/des noms de paquets Go par:(ex.net/http→net:http) - Les paquets supplémentaires peuvent être exposés par compilation directe après création d’une package map
- Pour éviter les ambiguïtés de namespace, remplace le
- Fonction REPL interactive avec modes d’édition Vi/emacs, édition multiligne, autocomplétion par tabulation, historique persistant, job control et interruptions
- Les types numériques diffèrent dans leur mapping avec Clojure (ex.
long→int64,char→lang.Char,BigInt→*lang.BigInt) - Encore en phase initiale de développement : bugs, fonctionnalités non implémentées et performances limitées ; compatibilité descendante non garantie avant la v1
- Licence EPL-1.0
Aucun commentaire pour le moment.