baguette_sharp

The Baguette# Interpreter REPL
README

Contact - Mail

Pré-requis

Ocaml version >= 4.13.1,modules fmt,str et linenoise ( pour le REPL )

opam install fmt str linenoise

Histoire

J'ai repris ce projet début 2022, il sert de TIPE ENS et Tétraconcours ( je suis en prépa ) pour illustrer la théorie des langages formels de manière plus ludique, pour sa manière ludique de jouer avec... des pâtisseries!

Le parser est fini, il sert à transformer la liste de token en un arbre de syntaxe abstraite ( AST en anglais ) qui va permettre d'interpréter le langage après, l'algorithme s'occupe de transformer une liste en un arbre avec les fonctions/opérateurs et leurs arguments ( qui peuvent aussi être des fonctions ) ainsi que l'interpréteur qui prend l'AST et interprète le langage, le travail porte maintenant sur la partie théorique (turing-completeness) et la partie compilateur.

La syntaxe est proche du BASIC mais sans les boucles explicite ( on peut les faire... mais il faut vous débrouiller ;) )

Support

Actuellement l'interpréteur supporte les entier, les flottant, les chaînes de caractères, les booleans, les conditions simple, le retour à une ligne antérieure/postérieure et les if/else et implémente les fonctions
standard précédemment implémentées dans la version en GO
La grammaire est identique, chaque mot/symbole est séparé d'un espace et chaque symbole et fonction ont un nom de pâtisserie/viennoiserie/sucrerie française ou non.

Les keywords sont simple (voir le WIKI) et ne sont pas suivi de parenthèse ( comme le LABEL par exemple )

Installation

dune install

Utilisation

dune exec baguette_sharp_interpreter

Test

dune runtest

Voir le WIKI ( en anglais ) pour des informations plus détaillées

Install
Published
16 Mar 2022
Maintainers
Sources
2.0.4.tar.gz
md5=e4574ad962a4e2c4216a0ce94a59c079
sha512=762c34c41962d53236c42ef7c56bf52b74bef3099726e2c7622437fb3109978ee6db5be8a40752b26acb6275a22e4427dea4a67bd39d3ca05241942fd12fc654
Dependencies
odoc
with-doc
linenoise
>= "1.3.1"
fmt
>= "0.7.0"
ocaml
>= "4.13.1"
dune
>= "3.0"
Reverse Dependencies