Skip to main content

An interactive BrainFuck interpreter

Project description

Interactive BrainFuck

An interactive BrainFuck interpreter written in Bython. Why not?

To install from source, you must first build the Bython source into a Python package:

$ make build

Then, you move to the python folder, and run the setup script:

$ cd python
$ sudo -H pip3 install .

After installation, you run an interactive session with the ibf command:

$ ibf 
Interactive BrainFuck - ibf v0.1

ibf is licensed under the permissive MIT license. Full license and
copyright information is available at the project's GitHub repository.

[Input] +[------->++<]>-.------------.--[--->+<]>--.+.+++[->+++<]>.+++++++++++++.[-->+++++<]>+++.[-->+++++++<]>.++.---.------------.-[--->+<]>----.+++[->+++<]>++.--[--->+<]>--.+.-----------.+++++.-------------.--[--->+<]>-.-----.+++.>++++++++++.
master procrastinator

Everything you input is interpreted as BrainFuck code, except for the following reserved keywords:

Command Description
tape Prints the current status of the tape (data cells), with the current cell in bold
pos Prints the current position on the tape
quit Quits the session
run Run code from a file

You can also run prewritten BrainFuck code, either as a standalone program, or in an interactive session:

$ ibf test.bf
Hello World!
$ ibf 
Interactive BrainFuck - ibf v0.1

ibf is licensed under the permissive MIT license. Full license and
copyright information is available at the project's GitHub repository.

[Input] run test.bf
Hello World!

The run command always runs programs inline, ie the code is run on the current tape and with the current tape position as starting position. Thus, after running a program you can inspect the final state of the tape:

[Input] tape
 0 1  2   3  4  5  6 7 8
 0 0 72 100 87 33 10 0 0

For more help, type ibf -h or view the manual page by running man ibf.

Project details


Release history Release notifications | RSS feed

This version

0.1

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

ibf-0.1.tar.gz (6.4 kB view hashes)

Uploaded Source

Built Distribution

ibf-0.1-py3-none-any.whl (8.2 kB view hashes)

Uploaded Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page