Skip to main content

pybrainfuck

PyPi Version PyPi Monthly Donwloads License Travis-ci Build Status Documentation Status Pytghon versions

pybrainfuck is yet another Python BrainFuck implementation. The goal is not be the fastest or most efficient but rather to be extensive in the implementation, configurable and extendable.

It contains a BrainFck class which can be directly used or subclassed to use in scripts. The code is fully documented and commented.

Or else the pip installed script pybrainfuck can be directly used.

Documentation

Read the full documentation at readthedocs.org:

Python 2/3 Support

  • Python 2.7

  • Python 3.2/3.3/3.4/3.5

  • It also works with pypy and pypy3

Installation

From pypi:

pip install pybrainfuck

From source:

  • Place the pybrainfuck directory found in the sources inside your project and import it

Scriptwise:

  • The entire implementation has been kept inside a single file. You can copy it inside other sources too

Quick Usage

Let’s quickly put together a script:

from __future__ import (absolute_import, division, print_function,
                        unicode_literals)

import sys

from pybrainfuck import BrainFck

if name == '__main__':

    bfck = BrainFck()

    for arg in sys.argv[1:]:
        print('-' * 50)
        print('Running:', arg)
        print('-' * 50)
        bfck.runfile(arg)
        print()

And prepare a Hello World (including a newline) brainfuck program:

++++++++[>++++[>++>+++>+++>+<<<<-]>+>+>->>+[<]<-]>>.>---.+++++++..+++.>>.<-.<.+++.------.--------.>>+.>++.

And both paired for a execution:

$ ./readme-example.py readme-example.b
--------------------------------------------------
Running: readme-example.b
--------------------------------------------------
Hello World!

Although the newlines after Hello World! are difficult to perceive.

Using the built-in script pybrainfuck:

$ pybrainfuck readme-example.b
Hello World!

Which luckily produces the same result.

Release files for pybrainfuck 1.0.1

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Built distribution (wheel)

Table of built distributions (wheels) for pybrainfuck 1.0.1
File Interpreter ABI Platform
pybrainfuck-1.0.1-py2.py3-none-any.whl Python 2, Python 3 none any Details

Release files / pybrainfuck-1.0.1-py2.py3-none-any.whl

Download URL pybrainfuck-1.0.1-py2.py3-none-any.whl
Size 13.5 kB
Tags Python 2 Python 3
SHA-256 checksum
How to use checksums
698bc4de98b29b753a7f09841c3a8e3e972c24cb1f5f823915df0d1501bd9f5f
BLAKE2b-256 checksum
How to use checksums
5eb2dc24e40ebeb83b49f05c885d581d4efa5853db5f0b6dd789f9137f169302
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No

Release history Release notifications | RSS feed

This release

1.0.1 This release

1 release file

1.0.0

1 release file

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page