{ "info": { "author": "Max Steinberg", "author_email": "maxssteinberg@gmail.com", "bugtrack_url": null, "classifiers": [ "License :: OSI Approved :: MIT License", "Operating System :: OS Independent", "Programming Language :: Python :: 3" ], "description": "# Xanathar\n###### Name inspired by *Xanathar's Guide to Everything* (\u00a9 Wizards of the Coast)\n\n## Pipeline\n###### Made in draw.io\n\n![Xanathar Pipeline](http://cdn.supachat.net/Xanathar_Pipeline.png)\n\n## Features\n+ Compiles directly to a binary (through LLVM IR)\n+ Fast (uses [Lark](https://github.com/lark-parser/lark) and [LLVMLite](https://github.com/numba/llvmlite)) for speed\n+ Strong typing (enforced by LLVM IR)\n+ Easy to learn syntax\n+ Written in Python, so no installation required\n## Spec\n\n### Implemented operations \n###### Keep in mind, Xanathar is a *huge* WIP\n\n+ Variables (statically allocated)\n + Int / UInt\n + 1 Bit (Bool)\n + 8 Bit (Char)\n + 16 Bit\n + 32 Bit\n + 64 Bit\n + 128 Bit\n + 512 Bit\n + 1024 Bit\n + Floats\n + Strings (implemented as a statically allocated int8[])\n+ Printing\n + libc `printf` can be used\n + `print_s`, `print_i`, `print_x`, `print_c` print with the `printf` format string (`%s` for `print_s`, etc.)\n + Implemented as a libc call to `printf` with the corresponding format string\n + Deprecated in favour of `printf`\n+ Casting\n + Works!\n + `string >> int` gives pointer to the `int`'th character in `string`\n + useful for (e.g.) `printf`\n+ Loops\n + While and For\n + While loops: more like a C-style do-while\n + For loops: similar to a do-while style loop\n+ Modules\n + stdio\n + `i8* get[i8*, i32]`\n + Implements `fgets` in C (source can be viewed in `stdlib/stdio.c`)\n\n\nIt's the best of both worlds: it keeps the amazing speed of low-level languages, but with the power and ease of high-level languages.\nOn a test of the Collatz conjecture, run for i = 1 to 10, and 77,031, (100 runs of the entire program) Python 3 ran in 1.9s, whereas Xanathar ran in 0.064s. \nFor 1000 runs of the program, Python 3 took 20.7s whereas Xanathar took 0.531s.\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://bitbucket.org/xanathardevs/xanathar/src/master/", "keywords": "", "license": "", "maintainer": "", "maintainer_email": "", "name": "xanathar", "package_url": "https://pypi.org/project/xanathar/", "platform": "", "project_url": "https://pypi.org/project/xanathar/", "project_urls": { "Homepage": "https://bitbucket.org/xanathardevs/xanathar/src/master/" }, "release_url": "https://pypi.org/project/xanathar/1.0.1/", "requires_dist": [ "lark-parser", "llvmlite" ], "requires_python": "", "summary": "The Xanathar programming Language", "version": "1.0.1" }, "last_serial": 4439266, "releases": { "0.0.1": [ { "comment_text": "", "digests": { "md5": "efba1cbfa710a118fb85818aaa718939", "sha256": "64ea9cacabc13e6cb9fd77048819093d8f47afd1081fd0867b3980f4002d99b3" }, "downloads": -1, "filename": "xanathar-0.0.1-py3-none-any.whl", "has_sig": false, "md5_digest": "efba1cbfa710a118fb85818aaa718939", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 10677, "upload_time": "2018-11-01T03:45:37", "url": "https://files.pythonhosted.org/packages/e6/e9/e7d26dc928a086e1a8efdbcffd6d84d26c081f4f9fbf5e1aa1c4e5de1734/xanathar-0.0.1-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "1a14597015b3c7eff72b4096064e7518", "sha256": "62b0853edf159b4420ad22184d7f93e136fca3a950bb426d1c011b1acfdbdcb7" }, "downloads": -1, "filename": "xanathar-0.0.1.tar.gz", "has_sig": false, "md5_digest": "1a14597015b3c7eff72b4096064e7518", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 10243, "upload_time": "2018-11-01T03:45:38", "url": "https://files.pythonhosted.org/packages/72/01/492475fde7378038d2f3319f6c21a69386c86e2499f73d16213912152983/xanathar-0.0.1.tar.gz" } ], "1.0.0": [ { "comment_text": "", "digests": { "md5": "6ef995b242afd5b88ed5e340dcbaee03", "sha256": "dec92495ef4258171279249a0b84f00daca334ad18fbdbc656d38cd310e24e03" }, "downloads": -1, "filename": "xanathar-1.0.0-py3-none-any.whl", "has_sig": false, "md5_digest": "6ef995b242afd5b88ed5e340dcbaee03", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 10676, "upload_time": "2018-11-01T03:50:19", "url": "https://files.pythonhosted.org/packages/a3/36/08cf0cc0b71c98734833d76cd7da6add749bd8e9bed4943a57dcf3852322/xanathar-1.0.0-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "faf8bced55bf20d25c4abc29e6f6c884", "sha256": "bbd98bc53b0f43fe22f3d348c6931557915de6985a17b5184d78b3665391ba86" }, "downloads": -1, "filename": "xanathar-1.0.0.tar.gz", "has_sig": false, "md5_digest": "faf8bced55bf20d25c4abc29e6f6c884", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 10238, "upload_time": "2018-11-01T03:50:20", "url": "https://files.pythonhosted.org/packages/18/35/d66137c048879fdfa253e9b3f4a8cb60c5b9a27f10ace24e30bda6829dca/xanathar-1.0.0.tar.gz" } ], "1.0.1": [ { "comment_text": "", "digests": { "md5": "6679c83f3f4710ccbb51a1e1393a5144", "sha256": "fd7ecf2876549b76dc61bef4693b5d97c305b4fdfba38c3ad5a9909197349096" }, "downloads": -1, "filename": "xanathar-1.0.1-py3-none-any.whl", "has_sig": false, "md5_digest": "6679c83f3f4710ccbb51a1e1393a5144", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 17465, "upload_time": "2018-11-01T04:02:29", "url": "https://files.pythonhosted.org/packages/8a/c3/a7e3cb447c830fc37e08b29bf23f8927b8c337a04797176d7e488400a660/xanathar-1.0.1-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "4589e7ec4e908805b52b36b3b1edd3dc", "sha256": "eb028719292a0864a64aeef182ae65625c5e13c70fca771f60e5905b2cf5bffb" }, "downloads": -1, "filename": "xanathar-1.0.1.tar.gz", "has_sig": false, "md5_digest": "4589e7ec4e908805b52b36b3b1edd3dc", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 15911, "upload_time": "2018-11-01T04:02:30", "url": "https://files.pythonhosted.org/packages/2d/21/334161a2910f7717d5b72cb40575b261c4e4ecf2a37b04bf6d59a15b80cb/xanathar-1.0.1.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "6679c83f3f4710ccbb51a1e1393a5144", "sha256": "fd7ecf2876549b76dc61bef4693b5d97c305b4fdfba38c3ad5a9909197349096" }, "downloads": -1, "filename": "xanathar-1.0.1-py3-none-any.whl", "has_sig": false, "md5_digest": "6679c83f3f4710ccbb51a1e1393a5144", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 17465, "upload_time": "2018-11-01T04:02:29", "url": "https://files.pythonhosted.org/packages/8a/c3/a7e3cb447c830fc37e08b29bf23f8927b8c337a04797176d7e488400a660/xanathar-1.0.1-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "4589e7ec4e908805b52b36b3b1edd3dc", "sha256": "eb028719292a0864a64aeef182ae65625c5e13c70fca771f60e5905b2cf5bffb" }, "downloads": -1, "filename": "xanathar-1.0.1.tar.gz", "has_sig": false, "md5_digest": "4589e7ec4e908805b52b36b3b1edd3dc", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 15911, "upload_time": "2018-11-01T04:02:30", "url": "https://files.pythonhosted.org/packages/2d/21/334161a2910f7717d5b72cb40575b261c4e4ecf2a37b04bf6d59a15b80cb/xanathar-1.0.1.tar.gz" } ] }