An open API service indexing awesome lists of open source software.

https://github.com/timvisee/brainfuck-rs-quick

A quick Brainfuck interpreter in Rust
https://github.com/timvisee/brainfuck-rs-quick

brainfuck brainfuck-interpreter brainfuck-parser rust

Last synced: about 2 months ago
JSON representation

A quick Brainfuck interpreter in Rust

Awesome Lists containing this project

README

          

# Quick brainfuck interpreter in Rust
[→ See simple implementation][simple]

**Note:** the base implementation is already working.
The optimization procedure is still a work in progress though.

---

A quick [brainfuck][brainfuck] interpreter implemented in the [Rust][rust] language.

This implementation is focussed on being as quick as possible.
This is my approach of building a quick interpreter, I'm sure there are quicker
interpreters out there.

## Usage
For installation, Git and Rust cargo are required.
Install the latest version of Rust with [rustup][rustup].

```bash
# Clone the project
git clone https://github.com/timvisee/brainfuck-rs-quick.git
cd brainfuck-rs-simple

# View help
cargo run --release -- --help

# Run a program
cargo run --release -- programs/hello_world.b

# Test
cargo test
```

## Help
```
brainfuck-rs-quick --help

brainfuck-rs-quick 0.1
Tim Visée
A quick brainfuck interpreter in Rust.

USAGE:
brainfuck-rs-quick [FLAGS]

FLAGS:
-b, --buffer Buffer output until the program is finished
-d, --describe Describe interpreted and optimized program logic
-h, --help Prints help information
--pretty Pretify described program logic
-p, --profiler Enable the profiler to interpreter stages
-V, --version Prints version information

ARGS:
Brainfuck file to interpret
```

## License
This project is released under the GNU GPL-3.0 license.
Check out the [LICENSE](LICENSE) file for more information.

[rust]: https://rust-lang.org/
[rustup]: https://rustup.rs/
[brainfuck]: https://en.wikipedia.org/wiki/Brainfuck
[simple]: https://github.com/timvisee/brainfuck-rs-simple