Salut,
Voici quelques branches à réviser.
https://gitlab.com/monnier/typer/-/compare/master...extract-args-from-repl
Cette branche déplace le traitement des arguments en ligne de commande vers le fichier typer.ml (le nouveau point d'entrée). De cette façon, le module REPL ne contient que du code relié au REPL. Soilih, tu peux t'inspirer du fichier typer.ml pour créer un nouveau point d'entrée pour ton serveur LSP (n'oublie pas d'ajouter l'exécutable au fichier dune).
https://gitlab.com/monnier/typer/-/compare/extract-args-from-repl...backend-...
J'ai extrait la création des backend dans une patch séparée. Le but de ce changement est de créer un objet backend qui permet de manipuler de façon abstraite un consommateur de Lexp.
https://gitlab.com/monnier/typer/-/compare/backend-object...gambit
Dans cette patch, je crée un nouveau backend qui émet du code Scheme compatible avec Gambit.
https://gitlab.com/monnier/typer/-/compare/master...lexer-tests
Finalement, cette patch ajoute des tests pour la phase d'analyse lexicale. C'est utile parce qu'il y a des subtilités au niveau des operateurs internes et j'ai une autre patch qui s'en vient qui fait des changements à cette phase pour préparer le changement des locations à un intervalle de caractères.
Merci Simon