{ "info": { "author": "Gary Benson", "author_email": "infinity@sourceware.org", "bugtrack_url": null, "classifiers": [ "Development Status :: 4 - Beta", "Environment :: Console", "Intended Audience :: Developers", "License :: OSI Approved :: GNU General Public License v3 or later (GPLv3+)", "License :: OSI Approved :: GNU Lesser General Public License v2 or later (LGPLv2+)", "Operating System :: OS Independent", "Programming Language :: Python :: 2", "Programming Language :: Python :: 2.7", "Programming Language :: Python :: 3", "Programming Language :: Python :: 3.3", "Programming Language :: Python :: 3.4", "Programming Language :: Python :: 3.5", "Programming Language :: Python :: 3.6", "Topic :: Software Development :: Compilers" ], "description": "Infinity Note Compiler\n======================\n\nInfinity is a platform-independent system for executables and shared\nlibraries to expose functionality to debug, monitoring, and analysis\ntooling.\n\nIn Infinity, executable and shared library files contain *Infinity\nnotes* in addition to their regular contents. Each Infinity note\ncontains a function encoded in a platform-independent instruction\nset that note-consuming tools can load and execute.\n\nThis package provides I8C, a compiler for creating object files\ncontaining Infinity notes. This package also provides I8X, an\nexecution environment that can be used to create unit tests for\ncompiled notes.\n\n\nInstallation\n------------\n\nThe easiest way to install I8C and I8X is to use pip::\n\n pip install -U --user i8c\n\nor::\n\n sudo pip install -U i8c\n\nEither of those commands will install both I8C and I8X. If you don\u2019t\nhave pip please refer to `installing pip`_. Hint: try one of these\ncommands::\n\n sudo apt-get install python-pip\n sudo yum install python-pip\n\nThe latest development versions of I8C and I8X are available from\nGitLab_. To build and install from source use setup.py::\n\n python setup.py install --user\n\nor::\n\n sudo python setup.py install\n\nI8C and I8X require Python 2.6 or newer.\n\n\nLicense\n-------\n\nI8C is licensed under the terms of the GNU General Public License,\neither `version\u00a03`_ of the License, or (at your option) any later\nversion.\n\nI8X is licensed under the terms of the GNU Lesser General Public\nLicense, either `version\u00a02.1`_ of the License, or (at your option)\nany later version.\n\nI8X loads user-supplied note testcases into itself, making a combined\nwork. The LGPL allows note testcases to be licensed however their\nauthors choose.\n\nFor the avoidance of doubt, I8C does not make a combined work with\nits input. I8C\u2019s input may also be licensed however its authors\nchoose.\n\n\nNote Compiler\n-------------\n\nThe note compiler\u2019s standard mode of operation is to translate\nsource code into object files which can be linked into executables\nor shared libraries in the usual manner. This example will\ngenerate the file |factorial.o|::\n\n cd examples/factorial\n i8c -c factorial.i8\n\nI8C uses GCC both to preprocess its input (unless invoked with\n|-fpreprocessed|) and to assemble its output (unless invoked with\n|-E| or |-S|). If GCC is used, all options not explicitly listed\nby |i8c --help| will be passed to GCC unmodified. In general I8C\noperates like GCC, so if you\u2019re used to using GCC then I8C should\nmake sense.\n\n\nExecution Environment\n---------------------\n\nI8X is an execution environment for testing Infinity notes. When\ninvoked as |i8x --quick| (or |i8x -q|) I8X executes a single note\nfunction, taking arguments from the command line and displaying the\nresult on the console::\n\n cd examples/factorial\n i8x -i factorial.o -q \"example::factorial(i)i\" 5\n\nWhen invoked without |-q| or |--quick| I8X expects one or more note\ntestcases to be specified on the command line. Note testcases are\nwritten in Python using an extension of the unittest_ unit testing\nframework. Testcases execute note functions with specific inputs and\ncheck the operation and result of the call proceeds as expected. This\nexample tests the |factorial.o| object file created in the first\nexample above::\n\n cd examples/factorial\n i8x -i factorial.o test-factorial.py\n\n\nDocumentation\n-------------\n\nDocumentation for Infinity is currently being put together on the\n`Infinity\u00a0wiki`_. Good starting points are I8Language_ and NoteFormat_.\n\nRight now there\u2019s no documentation for I8C and I8X aside from this\nfile and what you see in |i8c --help| and |i8x --help|. This is\nbeing worked on!\n\n\nContributing\n------------\n\nThe Infinity project homepage is https://infinitynotes.org/. Future\nwork is planned and coordinated on https://infinitynotes.org/roadmap.\nFor help or to report bugs please email infinity@sourceware.org.\n\n\n.. Links\n.. _GitLab: https://gitlab.com/gbenson/i8c/\n.. _installing pip: https://pip.pypa.io/en/stable/installing/\n.. _version\u00a03: http://gnu.org/licenses/gpl-3.0.html\n.. _version\u00a02.1: http://gnu.org/licenses/lgpl-2.1.html\n.. _unittest: https://docs.python.org/2/library/unittest.html\n.. _Infinity\u00a0wiki: https://infinitynotes.org/wiki/Infinity\n.. _I8Language: https://infinitynotes.org/wiki/I8Language\n.. _NoteFormat: https://infinitynotes.org/wiki/NoteFormat\n\n.. Substitutions\n.. |factorial.o| replace:: :code:`factorial.o`\n.. |-fpreprocessed| replace:: :code:`-fpreprocessed`\n.. |-E| replace:: :code:`-E`\n.. |-S| replace:: :code:`-S`\n.. |i8c --help| replace:: :code:`i8c\u00a0--help`\n.. |i8x --help| replace:: :code:`i8x\u00a0--help`\n.. |i8x -q| replace:: :code:`i8x\u00a0-q`\n.. |i8x --quick| replace:: :code:`i8x\u00a0--quick`\n.. |-q| replace:: :code:`-q`\n.. |--quick| replace:: :code:`--quick`\n\n\n", "description_content_type": null, "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://infinitynotes.org/", "keywords": "", "license": "GPLv3+ and LGPLv2.1+", "maintainer": "", "maintainer_email": "", "name": "i8c", "package_url": "https://pypi.org/project/i8c/", "platform": "", "project_url": "https://pypi.org/project/i8c/", "project_urls": { "Homepage": "https://infinitynotes.org/" }, "release_url": "https://pypi.org/project/i8c/0.0.6/", "requires_dist": [ "arpy", "pyelftools (>=0.24)" ], "requires_python": "", "summary": "Infinity Note Compiler", "version": "0.0.6" }, "last_serial": 3300266, "releases": { "0.0.1": [ { "comment_text": "", "digests": { "md5": "76534be55315005185e57a28854a9820", "sha256": "739ef1b2f45a5e8dbd8ef62a5f4b651491a4d8de6cc7c4b8b97d1099299f4471" }, "downloads": -1, "filename": "i8c-0.0.1-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "76534be55315005185e57a28854a9820", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 64721, "upload_time": "2015-10-20T13:08:30", "url": "https://files.pythonhosted.org/packages/1d/6f/b4afce26e8bfbd6788be0116b2c6588c8697f5eb9cc2a63bb1f2788c1a7e/i8c-0.0.1-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "e948450b447ca897bd54d40df83ff438", "sha256": "8dc7b5f315fa3561b47f5f7059d3bd85d4843f919d0c3934807e533f44c7207c" }, "downloads": -1, "filename": "i8c-0.0.1.tar.gz", "has_sig": true, "md5_digest": "e948450b447ca897bd54d40df83ff438", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 77437, "upload_time": "2015-10-20T13:08:37", "url": "https://files.pythonhosted.org/packages/cf/d0/7c6edb3405fd7457abdb66efbd56a69bcb528a154936462052a5476134b6/i8c-0.0.1.tar.gz" } ], "0.0.2": [ { "comment_text": "", "digests": { "md5": "392785d7fc9c9f31b05d2f8761d93c0c", "sha256": "bf5534865f788d518f2202c2f74cda693362ed5569e0602315aa1d3278742c1e" }, "downloads": -1, "filename": "i8c-0.0.2-py2.py3-none-any.whl", "has_sig": true, "md5_digest": "392785d7fc9c9f31b05d2f8761d93c0c", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 72352, "upload_time": "2016-04-22T10:21:47", "url": "https://files.pythonhosted.org/packages/a0/47/5d02b92c3e7f5be0dcaf6758f53fb7440fcc8f5d9d0cccb5ed0691fa042f/i8c-0.0.2-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "7c596e3989ea8b0030af7e99c27b2016", "sha256": "776556d1a9c0993fe34ab7df2af6cc5db4bd50db934b3dad0c09cbe763bfa637" }, "downloads": -1, "filename": "i8c-0.0.2.tar.gz", "has_sig": true, "md5_digest": "7c596e3989ea8b0030af7e99c27b2016", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 89355, "upload_time": "2016-04-22T10:26:42", "url": "https://files.pythonhosted.org/packages/0e/fd/58660d620dc6770f252df47b3187b4a89cf84d5b0096bc23fd790333ce8e/i8c-0.0.2.tar.gz" } ], "0.0.3": [ { "comment_text": "", "digests": { "md5": "fe637470e4e8c19138821ee67e3cb96a", "sha256": "7be0f4607035dd968261770bfd7b1750cbbb6b40a66cd0f76e30fa0037d4b12a" }, "downloads": -1, "filename": "i8c-0.0.3-py2.py3-none-any.whl", "has_sig": true, "md5_digest": "fe637470e4e8c19138821ee67e3cb96a", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 76709, "upload_time": "2016-06-10T10:45:05", "url": "https://files.pythonhosted.org/packages/5d/06/5326e6ce25e8b8111c57d728288acc3aff7e96e82f1c43f608755635fac6/i8c-0.0.3-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "3f61028a016045749479c64ec4b019a1", "sha256": "c725e27d5c240ec800599a5a24de78ed0ab73df2919217f447b05f9b33211222" }, "downloads": -1, "filename": "i8c-0.0.3.tar.gz", "has_sig": true, "md5_digest": "3f61028a016045749479c64ec4b019a1", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 95421, "upload_time": "2016-06-10T10:45:21", "url": "https://files.pythonhosted.org/packages/b6/24/ad232b0fb2cfd9be522f3c078a7f1bfb4433b8987296b3e7c5a8ddeddd0f/i8c-0.0.3.tar.gz" } ], "0.0.4": [ { "comment_text": "", "digests": { "md5": "4633c7141899d949c17e60e5a5e4b2a2", "sha256": "3b1ee592318ccf63f8c687ad324e38491389bc46f1d330d021c013357a4c030b" }, "downloads": -1, "filename": "i8c-0.0.4-py2.py3-none-any.whl", "has_sig": true, "md5_digest": "4633c7141899d949c17e60e5a5e4b2a2", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 78440, "upload_time": "2016-10-12T16:19:50", "url": "https://files.pythonhosted.org/packages/df/e9/d0b828ae1b16669a4b95f0400f9024ff02c123668b959511f13a23ea414d/i8c-0.0.4-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "ad2f2d52ee24e9113ad50001c2745515", "sha256": "389d6b37e140de9aa68042135458bca782f89c32698a275f6dd5765255882aa8" }, "downloads": -1, "filename": "i8c-0.0.4.tar.gz", "has_sig": true, "md5_digest": "ad2f2d52ee24e9113ad50001c2745515", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 94086, "upload_time": "2016-10-12T16:19:53", "url": "https://files.pythonhosted.org/packages/09/45/e10e13caea18d4c395e85b3b2a6ddde709124c0722352cf8193c65b369f0/i8c-0.0.4.tar.gz" } ], "0.0.5": [ { "comment_text": "", "digests": { "md5": "d941d87d402a3e53a5fb71181d1de396", "sha256": "c6161fcae4d1857ecf65f447ccae0449ffa4be8bfd941065eadec609535ad827" }, "downloads": -1, "filename": "i8c-0.0.5-py2.py3-none-any.whl", "has_sig": true, "md5_digest": "d941d87d402a3e53a5fb71181d1de396", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 78896, "upload_time": "2017-06-07T11:28:40", "url": "https://files.pythonhosted.org/packages/da/8c/4ec1438d3f72dda03c10f0e06d40808419288069a144e4ff2160e2c9a5f2/i8c-0.0.5-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "744a41113086266b1bfb7d6d4b2346a6", "sha256": "93394ba80ddaf5b171e152e4f641fc9b1e7b4fecb98cdffe6bf824dfec80735f" }, "downloads": -1, "filename": "i8c-0.0.5.tar.gz", "has_sig": true, "md5_digest": "744a41113086266b1bfb7d6d4b2346a6", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 95226, "upload_time": "2017-06-07T11:28:43", "url": "https://files.pythonhosted.org/packages/48/b2/1915bfae57c5a00923fd86173cf068f2b31d493d2bd50be09fcbc2ec153e/i8c-0.0.5.tar.gz" } ], "0.0.6": [ { "comment_text": "", "digests": { "md5": "e39ea5db08d907c544a6f369ecef1c65", "sha256": "ccf21f23eee7abf24ee098044f52b2ed7f5d0fbfda2f9226ddc56872921bbb4a" }, "downloads": -1, "filename": "i8c-0.0.6-py2.py3-none-any.whl", "has_sig": true, "md5_digest": "e39ea5db08d907c544a6f369ecef1c65", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 88296, "upload_time": "2017-11-02T13:41:21", "url": "https://files.pythonhosted.org/packages/b4/c6/56537886f2e13667ff302a9552180b94fd89484e4fdf4543378f14704d85/i8c-0.0.6-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "09abcc3b7a705c3a8a40762efe133b41", "sha256": "0c33b6fe000bb774127d1c6a2ca37aa35ae5419936e518a4d389e76cf9ab8964" }, "downloads": -1, "filename": "i8c-0.0.6.tar.gz", "has_sig": true, "md5_digest": "09abcc3b7a705c3a8a40762efe133b41", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 115155, "upload_time": "2017-11-02T13:41:24", "url": "https://files.pythonhosted.org/packages/cc/c9/c58ef88827fbf6c21859030e9d229df401d626caa234b120417ebac78fb3/i8c-0.0.6.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "e39ea5db08d907c544a6f369ecef1c65", "sha256": "ccf21f23eee7abf24ee098044f52b2ed7f5d0fbfda2f9226ddc56872921bbb4a" }, "downloads": -1, "filename": "i8c-0.0.6-py2.py3-none-any.whl", "has_sig": true, "md5_digest": "e39ea5db08d907c544a6f369ecef1c65", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 88296, "upload_time": "2017-11-02T13:41:21", "url": "https://files.pythonhosted.org/packages/b4/c6/56537886f2e13667ff302a9552180b94fd89484e4fdf4543378f14704d85/i8c-0.0.6-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "09abcc3b7a705c3a8a40762efe133b41", "sha256": "0c33b6fe000bb774127d1c6a2ca37aa35ae5419936e518a4d389e76cf9ab8964" }, "downloads": -1, "filename": "i8c-0.0.6.tar.gz", "has_sig": true, "md5_digest": "09abcc3b7a705c3a8a40762efe133b41", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 115155, "upload_time": "2017-11-02T13:41:24", "url": "https://files.pythonhosted.org/packages/cc/c9/c58ef88827fbf6c21859030e9d229df401d626caa234b120417ebac78fb3/i8c-0.0.6.tar.gz" } ] }