Beremiz is a stack-based programming language that I created. It was initially created in Lua. This repository hosts a work-in-progress C reimplementation of the Beremiz language. The original Lua version remains the definitive and most up-to-date version, available at https://github.com/AdaiasMagdiel/Beremiz.
This C reimplementation serves primarily as a proof-of-concept (POC) to explore the language's functionality in a different programming environment while I enhancing my C programming skills. While the Lua version remains the primary focus, the C reimplementation holds potential to become the definitive version in the future.
This section equips you with the knowledge to set up, build, and run this implementation.
-
Clone the Repository:
Begin by cloning the Beremiz C repository from GitHub using the following command:
git clone https://github.com/AdaiasMagdiel/beremiz-c
-
Navigate to Project Directory:
Once the cloning process is complete, navigate to the newly created project directory:
cd beremiz-c
The project utilizes a Makefile
to simplify the build process across different operating systems. To create the Beremiz interpreter executable, run the following command in the project directory:
make
This command will compile the source code and generate the beremiz
executable file.
There are two ways to run the Beremiz interpreter:
-
Executing a Beremiz Script:
To execute a Beremiz script file, provide the filename (including the
.brz
extension) as an argument when running theberemiz
executable:./beremiz <filename>.brz
Replace
<filename>.brz
with the actual name of your Beremiz script. -
Interactive Mode (REPL):
To launch the Beremiz interpreter in interactive mode (REPL), simply run the
beremiz
executable without any arguments:./beremiz
This will start the REPL, allowing you to enter Beremiz code line by line for immediate execution and evaluation.
This project is licensed under the MIT License. Refer to the LICENSE
file for more details.
Contributions are welcome! Feel free to create pull requests with improvements or bug fixes.
- This project is still under development, and the C reimplementation may not fully replicate all features of the Lua version.