mindblown

Brainfuck to x86 ELF compiler with batteries included written in Rust meant for Linux and Windows under WSL. Code generation is made from brainf**k directly to x86 Intel assembly as IR. Most of the optimization work is done when parsing, so an integrated interpreter can benefit from it too.

This is in a very early state. Stay tuned for more features and optimizations like the ones described in TODO.

Note: samples/patterns.py was solely used for detecting common loop patterns in classical brainf**k programs for present and future refactoring.

Table of Contents

Prerequisites

Getting started

Get the latest binary release installed on your machine ```sh

Get the latest cargo release

$ cargo install mindblown

Build from source

$ git clone https://github.com/Noxtal/mindblown.git $ cd mindblown $ cargo build --release ```

Usage

```sh mindblown 0.3.0 Brainfuck to x86 ELF compiler with batteries included.

USAGE: mindblown [SUBCOMMAND]

OPTIONS: -h, --help Print help information -V, --version Print version information

SUBCOMMANDS: compile Compiles a Brainfuck file. help Print this message or the help of the given subcommand(s) ```

If no subcommand is provided, mindblown will default to the intergrated interpreter, which also uses the snailquote syntax for input. Please refer to their documentation for more information.

Compile a brainf**k program

```sh mindblown-compile Compiles a Brainfuck file.

USAGE: mindblown compile [OPTIONS]

ARGS: The Brainfuck file to compile.

OPTIONS: -h, --help Print help information -o, --output The output file. -r, --run Run the compiled executable after compiling. ```

Inspiration

TODO