Crates.io | brainfoamkit |
lib.rs | brainfoamkit |
version | 1.1.1-next.8 |
source | src |
created_at | 2023-07-02 23:15:35.631014 |
updated_at | 2024-11-08 18:26:30.75311 |
description | An interpreter for the brainf*** language |
homepage | |
repository | https://github.com/AliSajid/brainfoamkit |
max_upload_size | |
id | 906482 |
size | 2,789,124 |
This project aims to implement a brainfuck interpreter in Rust. In addition, this also aims to provide a terminal-based TUI for stepping through and understanding the brainfuck programs.
Stable | Beta | Nightly | MSRV (1.75.0) | |
---|---|---|---|---|
Linux | ||||
Windows | ||||
macos |
Brainfuck is an interesting esoteric language. It is turing complete and can essentially be used as a general purpose programming language. However, it has only 8 individual symbols that are used to instruct the interpreter. This makes it both fun and challenging to implement.
While several C and C++ interpreters for Brainfuck exist, I believe that it is particularly well suited for implementation in Rust due the combination of memory-safety, speed and zero-cost abstractions. Additionally, the interpreter is expected to be non-trivial in complexity while still only scratching the surface of the features Rust has to offer. Thus, it provides an excellent educational opportunity for someone trying to learn Rust.
The major details for the project are available in the BrainFoamKit Book.
See the Contributing for details on how to contribute to the project.
You can contribute to the project through GitPod.
This project is governed by the Contributor Code of Conduct Covenant. Details are outlined in the CODE OF CONDUCT.