{ "info": { "author": "Bartosz Zaczy\u0144ski", "author_email": "bartosz.zaczynski@gmail.com", "bugtrack_url": null, "classifiers": [ "Development Status :: 3 - Alpha", "License :: OSI Approved :: MIT License", "Programming Language :: Python :: 3.7", "Topic :: Software Development :: Interpreters" ], "description": "# [brain·f](https://github.com/bzaczynski/brainf)\n\nYet another [Brainfuck](https://en.wikipedia.org/wiki/Brainfuck) interpreter written in Python.\n\nFor sample programs navigate to [esolangs wiki](https://esolangs.org/wiki/Brainfuck) or [here](http://www.hevanet.com/cristofd/brainfuck/).\n\n## Usage\n\nRun directly as a shell script:\n```shell\n$ cat > file.b\n#!/usr/bin/env brainfuck.py\n++++++++++[>++++++<-]>+++++.\n^D\n$ chmod +x file.b\n$ ./file.b\nA\n```\n\nRun as a Python script:\n```shell\n$ brainfuck.py /path/to/file.b\n```\n\nRun as a Python module:\n```shell\n$ python -m brainf /path/to/file.b\n```\n\nRun as a Python Executable (PEX):\n```shell\n$ python brainf-linux.pex /path/to/file.b\n```\n\nSee technical [documentation](http://brainf.readthedocs.io/en/latest/) for more details.\n\n## Download\n\nSource code:\n\n```shell\n$ git clone https://github.com/bzaczynski/brainf.git\n```\n\n## Installation\n\nIn a new virtual environment:\n\n```shell\n$ pip install .\n```\n\nTo uninstall:\n\n```shell\n$ pip uninstall brainf\n```\n\n## Building\n\n### Binary Distribution\n\nTo build a binary distribution with [Docker](https://www.docker.com/) and [PEX](https://pypi.org/project/pex/) follow the steps below.\n\n1. Create a new Docker image.\n```shell\n$ docker build -t brainf:linux -f Dockerfile.linux .\n```\n\n2. Run interim container to extract .pex file from the image.\n```shell\n$ docker run --rm brainf:linux cat /root/brainf-1.0.0-linux.pex > brainf-linux.pex\n```\n\n### Documentation\n\nTo build Sphinx documentation:\n\n```shell\n$ pip install -r requirements-dev.txt\n$ cd docs/\n$ make clean html\n```\n\n## Publishing\n\nThe recommended way to publish a project on [PyPI](https://pypi.org/) is with [twine](https://github.com/pypa/twine) since it uses SSL by default.\n\n1. Make sure twine is installed:\n```shell\n$ pip install twine\n```\n\n2. Create source and binary distributions:\n```shell\n$ python setup.py sdist bdist_wheel\n```\n\n3. Upload to Python Package Index.\n\n Test PyPI:\n ```shell\n $ twine upload --repository-url https://test.pypi.org/legacy/ dist/*\n ```\n PyPI:\n ```shell\n $ twine upload dist/*\n ```\n\n## License\n\nThis project is licensed under the [MIT License](https://raw.githubusercontent.com/bzaczynski/brainf/master/LICENSE).\n\n\n", "description_content_type": "text/markdown", "docs_url": null, "download_url": "https://github.com/bzaczynski/brainf/archive/master.zip", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/bzaczynski/brainf", "keywords": "brainfuck interpreter brainf", "license": "MIT", "maintainer": "", "maintainer_email": "", "name": "brainf", "package_url": "https://pypi.org/project/brainf/", "platform": "", "project_url": "https://pypi.org/project/brainf/", "project_urls": { "Download": "https://github.com/bzaczynski/brainf/archive/master.zip", "Homepage": "https://github.com/bzaczynski/brainf" }, "release_url": "https://pypi.org/project/brainf/0.0.1/", "requires_dist": null, "requires_python": "", "summary": "Brainfuck interpreter", "version": "0.0.1" }, "last_serial": 4172891, "releases": { "0.0.1": [ { "comment_text": "", "digests": { "md5": "8d763daaa793348afbb29dddff57ab95", "sha256": "0b2b74ef850a81663e83c6f1d28c697fc3fe78efc2dbc39a676fd915a3897803" }, "downloads": -1, "filename": "brainf-0.0.1-py3-none-any.whl", "has_sig": false, "md5_digest": "8d763daaa793348afbb29dddff57ab95", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 10030, "upload_time": "2018-08-15T12:17:00", "url": "https://files.pythonhosted.org/packages/54/bb/eb7ec5ed7432a7e644229913b04719ee39852cfb7052f53da2c7f8c76aab/brainf-0.0.1-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "03787cbd0278872041c1afed74f9f52e", "sha256": "fdd0037554d20b1bbe78f0cd6edef69f9032338e5e3209d58a8c31881448d7a1" }, "downloads": -1, "filename": "brainf-0.0.1.tar.gz", "has_sig": false, "md5_digest": "03787cbd0278872041c1afed74f9f52e", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 7447, "upload_time": "2018-08-15T12:17:01", "url": "https://files.pythonhosted.org/packages/ad/2d/d15f7c11e26d4c52ef2a90b134b46f468cf08fb88276cfdc8740b9c40ed8/brainf-0.0.1.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "8d763daaa793348afbb29dddff57ab95", "sha256": "0b2b74ef850a81663e83c6f1d28c697fc3fe78efc2dbc39a676fd915a3897803" }, "downloads": -1, "filename": "brainf-0.0.1-py3-none-any.whl", "has_sig": false, "md5_digest": "8d763daaa793348afbb29dddff57ab95", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 10030, "upload_time": "2018-08-15T12:17:00", "url": "https://files.pythonhosted.org/packages/54/bb/eb7ec5ed7432a7e644229913b04719ee39852cfb7052f53da2c7f8c76aab/brainf-0.0.1-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "03787cbd0278872041c1afed74f9f52e", "sha256": "fdd0037554d20b1bbe78f0cd6edef69f9032338e5e3209d58a8c31881448d7a1" }, "downloads": -1, "filename": "brainf-0.0.1.tar.gz", "has_sig": false, "md5_digest": "03787cbd0278872041c1afed74f9f52e", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 7447, "upload_time": "2018-08-15T12:17:01", "url": "https://files.pythonhosted.org/packages/ad/2d/d15f7c11e26d4c52ef2a90b134b46f468cf08fb88276cfdc8740b9c40ed8/brainf-0.0.1.tar.gz" } ] }