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
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
File details
Details for the file ibf-0.1.tar.gz
.
File metadata
- Download URL: ibf-0.1.tar.gz
- Upload date:
- Size: 6.4 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/1.11.0 pkginfo/1.4.2 requests/2.19.1 setuptools/39.1.0 requests-toolbelt/0.8.0 tqdm/4.26.0 CPython/3.5.2
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 442ab9eaa329da3d8da656c2c6337c6a43278b632d7c51bbfd13ac3b060df67b |
|
MD5 | 2cf73ec157fa245af4c950e064935620 |
|
BLAKE2b-256 | 9bdb7d9494b51e449ee9e3b491312a87e59ef8e6cebb0c1905fe52c97e4773bf |
File details
Details for the file ibf-0.1-py3-none-any.whl
.
File metadata
- Download URL: ibf-0.1-py3-none-any.whl
- Upload date:
- Size: 8.2 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/1.11.0 pkginfo/1.4.2 requests/2.19.1 setuptools/39.1.0 requests-toolbelt/0.8.0 tqdm/4.26.0 CPython/3.5.2
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | f6caa62cd0e2a9a4d7ef396b4732ad179a51a67217b096968910e7342f37e403 |
|
MD5 | 669e547291e5f025951b7dd0fb902f18 |
|
BLAKE2b-256 | 641d9f97d094f8006b58074aa1432c7150a523d396f0ade270d63ab18364b898 |