GLaDOS
Un langage de programmation personnalisé avec compilateur et machine virtuelle écrits en Haskell. Le compilateur transforme le code source GLaDOS en bytecode exécuté par une VM dédiée - projet Epitech de programmation fonctionnelle.
Vue d’ensemble
GLaDOS (GLaDOS Language and Dynamic Operating System) est une implémentation de langage complète construite de zéro en Haskell dans le cadre d’un projet Epitech de programmation fonctionnelle. Il couvre la totalité du pipeline, du texte source jusqu’à l’exécution.
Composants
Compilateur (glados)
Parse le code source GLaDOS, effectue la vérification des types et l’analyse, puis produit du bytecode ciblant le jeu d’instructions de la VM personnalisée.
Machine Virtuelle (vm)
Exécute le bytecode compilé GLaDOS. Implémente un modèle d’exécution à pile avec un jeu d’instructions défini.
make all # construit compilateur et VM
make compiler # compilateur uniquement
make executer # VM uniquement
Stack
- Langage : Haskell
- Build : Stack, Cabal
- Tests : HSpec (unitaires), scripts de tests fonctionnels