Basic Educational Assembly with Neat Syntax
To know something, you should start with learning it
Well, BEANS is a custom programming language trying to look and feel similar to basic assembly. It emulates ram and registers. How would you display the information? Well weve got a flexible IO api that gives you the power to create IO modules using python and directly import them into your code.
Using the project is the best way to utilize the project
Note: I am working on getting the beans name on PyPi, easier installation through PyPi or the AUR is coming in the near future.
Curently, to run code youll need both uv and git installed. Then youll want to clone this repo and sync the enviorment:
git clone https://github.com/BravestCheetah/BEANS
uv sync
Then you can use the recently implemented CLI Tool to run your programs, to more quickly install it you would install an editable version:
uv pip install -e .
Alternatively, on Windows you can install it globally, skipping enviorment activation:
pip install -e .
Then you need to activate the enviorment (note that this will only apply to the current shell, youll need to redo this step every time you open a new console window):
source .venv/bin/activate
Now you can simply use the bean command to run programs:
bean my_code.bean
Note: Documentation on how to use the different settings flags are going to be availble very soon.
Suprisingly fast, so dont hold back (im serious this stuff FAST)
We have documentation about the developement process and coding syntax as well as examples availble here
Contribution is the first step towards freindship, if your code isnt shit
To contribute follow these steps:
- Fork the repo
- Review the entire codebase (its not that much code, just read through it so you understand what the stuff does)
- make you changes
- Give an informational commit message (not just "." or "commit")
- Create a PR containing all your commits on github
- Wait for a developer to review and approve your changes
- If given, apply changes mentioned by reviewers and create a new PR
- Youve now contributed!