{ "info": { "author": "Polis Flatt", "author_email": "polisflatt@gmail.com", "bugtrack_url": null, "classifiers": [], "description": "## bfcom\n\n### *A compiler for the (joke) language BrainFuck*\n\nBfcom is a very simple compiler which aims to compile standardized brainfuck. That is, it only seeks to compile features integral to what brainfuck is normally known for. For this reason, this compiler will not be adding in any other features.\n\nIt works by emulating memory using arrays. For instance, if I want to advance one address, I would just type *>* and it would effectively translate to *i++;* in C. This means that the pointer is now pointing to the next array element, effectively emulating memory, which brainfuck requires.\n\n char array[memory_size];\n char* i = &array;\n\nFor a comparison of brainfuck to C, see this list below:\n\n\"> : `i++;`\"\n\"< : `i--;`\"\n\"+ : `(*i)++;`\"\n\"-: `(*i)--;`\"\n\n\nThe compiler uses Python to loop through a brainfuck file, then it translates to C. Other options within the compiler (or, rather, shall I be calling it: the translator) can use GCC to compile it.\n\nThis is nothing really special or grandiose, but it can be useful for testing and experimental purposes, if you do not want to use a JavaScript version of brainfuck. However, this program was only made as an experiment, and thus will not be updated. \n\n\nTo install, simply look inside the install.sh file first to ensure safety and run it. It will be installed to /usr/bin, where you can easily access it.\n\nOr, if you prefer a package manager... `pip install bfcom`\n\nTo use, you simply run the bfcom, with the filename of the .bf file, and with the arguments that come with it. For example, you can run ` ~ bfcom file.bf --compile file.o ` to compile a .bf file to an .o file using gcc.\n\n\n\n", "description_content_type": "text/markdown", "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/polisflatt/bfcom", "keywords": "", "license": "", "maintainer": "", "maintainer_email": "", "name": "bfcom", "package_url": "https://pypi.org/project/bfcom/", "platform": "", "project_url": "https://pypi.org/project/bfcom/", "project_urls": { "Homepage": "https://github.com/polisflatt/bfcom" }, "release_url": "https://pypi.org/project/bfcom/1.0.0/", "requires_dist": null, "requires_python": "", "summary": "Brainfuck compiler, not interpreter.", "version": "1.0.0" }, "last_serial": 5231116, "releases": { "1.0.0": [ { "comment_text": "", "digests": { "md5": "be2dac8a5923bb209e6eda4c743ce3e7", "sha256": "e220882d17253f436a3af7cccf5435e62b8836fcf93d377e171b206de99fb7c9" }, "downloads": -1, "filename": "bfcom-1.0.0-py3-none-any.whl", "has_sig": false, "md5_digest": "be2dac8a5923bb209e6eda4c743ce3e7", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 4743, "upload_time": "2019-05-06T07:17:19", "url": "https://files.pythonhosted.org/packages/80/0f/ef6ae7b8fd78abc9ae063a2140e920fe26ff2a7b0b01d8959b092f461826/bfcom-1.0.0-py3-none-any.whl" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "be2dac8a5923bb209e6eda4c743ce3e7", "sha256": "e220882d17253f436a3af7cccf5435e62b8836fcf93d377e171b206de99fb7c9" }, "downloads": -1, "filename": "bfcom-1.0.0-py3-none-any.whl", "has_sig": false, "md5_digest": "be2dac8a5923bb209e6eda4c743ce3e7", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 4743, "upload_time": "2019-05-06T07:17:19", "url": "https://files.pythonhosted.org/packages/80/0f/ef6ae7b8fd78abc9ae063a2140e920fe26ff2a7b0b01d8959b092f461826/bfcom-1.0.0-py3-none-any.whl" } ] }