Gucci Lang is an toy language made with the purpose of learning language design.
It was made using chumsky and ariadne, and aims to have a simple syntax for didactic purposes.
Run cargo doc --open
To create the executable, run cargo build
. It will create a binary in target/debug/gucci-lang.exe
.
To compile a gucci file, create a file ending with .gu
and run gucci_lang.exe compile <filename>
.
To run an already compiled gucci file, run gucci_lang.exe run <filename>
, the filename must end in .gu.bs
.
To compile and run in the same command, run gucci_lang.exe compile_run <filename>
.
It is possible to use the short version of the actions: c
, r
, cr
, respectively.
- Lexical analysis
- Syntactic analysis
- Basic variables semantics: Variables table and functions directory
- Basic expression semantics: semantic cube and evaluation
- Code generation for conditional statements and loops
- Code generation for functions
- Memory map for virtual machine execution.
- Virtual Machine: execution of arithmetic expressions and sequential statements.
- Code generation for structured data
- Virtual Machine: execution of conditional statements.
- 1st version of documentation
The project is available under the MIT license.