Skip to content

C-Like language compilateur and interpreter, in Haskell.

License

Notifications You must be signed in to change notification settings

NielsOuvrard/GLaDOS

Folders and files

NameName
Last commit message
Last commit date

Latest commit

8095a99 · Jan 16, 2024
Jan 16, 2024
Jan 14, 2024
Jan 16, 2024
Jan 16, 2024
Jan 16, 2024
Jan 15, 2024
Jan 14, 2024
Jan 11, 2024
Nov 29, 2023
Nov 29, 2023
Jan 4, 2024
Jan 15, 2024
Dec 12, 2023
Jan 14, 2024
Jan 11, 2024
Jan 14, 2024
Jan 11, 2024
Dec 4, 2023
Dec 4, 2023

Repository files navigation

GLaDOS

Description

GLaDOS est un projet de création de langage de programmation.

Ce projet est divisé en 2 parties :

  1. Un compilateur
    1. Un Parser qui transforme un fichier de code en AST
      1. Un lexer qui transforme un fichier de code en tokens
      2. Un parser qui transforme les tokens en Sexpr
      3. Un parser qui transforme les Sexpr en AST
    2. Un compilateur qui transforme l'AST en bytecode puis en fichier binaire
      1. Un compilateur qui transforme l'AST en bytecode
      2. Un compilateur qui transforme le bytecode en fichier binaire
  2. Une machine virtuelle
    1. Un programme qui lit un fichier binaire et l'execute

Installation

A partir d'un binaire

Téléchargez les binaires dans la section realease du repo.

A partir du code source

Clonez le repo et lancez make.

Syntaxe

La syntaxe du langage est décrite ici : Syntaxe

Utilisation

Lancez ./glados <fichier> pour compiler un fichier .bin puis ./eval <fichier.bin> pour l'executer.

Auteurs

About

C-Like language compilateur and interpreter, in Haskell.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages