{ "info": { "author": "Li Haoyi, Justin Holmgren", "author_email": "haoyi.sg@gmail.com, justin.holmgren@gmail.com", "bugtrack_url": null, "classifiers": [ "Programming Language :: Python :: 2.7" ], "description": "MacroPy is an implementation of Macros in the Python Programming Language.\nMacroPy provides a mechanism for user-defined functions (macros) to perform\ntransformations on the abstract syntax tree(AST) of Python code at module\nimport time. This is an easy way to modify the semantics of a python program\n\nPython like you've never seen before\n------------------------------------\n\nMacroPy allows you to create constructs which are impossible to have in normal\npython code, such as:\n\nTracing\n```````\n.. code:: python\n\n with trace:\n sum([x + 5 for x in range(3)])\n\n # sum([x + 5 for x in range(3)])\n # range(3) -> [0, 1, 2]\n # x + 5 -> 5\n # x + 5 -> 6\n # x + 5 -> 7\n # [x + 5 for x in range(3)] -> [5, 6, 7]\n # sum([x + 5 for x in range(3)]) -> 18\n\nQuick Lambdas\n`````````````\n\n.. code:: python\n\n print map(f[_[0]], ['omg', 'wtf', 'bbq'])\n # ['o', 'w', 'b']\n\n print reduce(f[_ + _], ['omg', 'wtf', 'bbq'])\n # 'omgwtfbbq\n\nCase Classes\n````````````\n\n.. code:: python\n\n @case\n class Point(x, y): pass\n\n p = Point(1, 2)\n\n print str(p) #Point(1, 2)\n print p.x #1\n print p.y #2\n print Point(1, 2) == Point(1, 2) # True\n\nAnd more! All this runs perfectly on vanilla Python 2.7 or PyPy 2.0. For more\ndetails, see the `GitHub page `_.\nor ask in the `Google Group `_.", "description_content_type": null, "docs_url": null, "download_url": "UNKNOWN", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/lihaoyi/macropy", "keywords": null, "license": "MIT", "maintainer": null, "maintainer_email": null, "name": "MacroPy", "package_url": "https://pypi.org/project/MacroPy/", "platform": "UNKNOWN", "project_url": "https://pypi.org/project/MacroPy/", "project_urls": { "Download": "UNKNOWN", "Homepage": "https://github.com/lihaoyi/macropy" }, "release_url": "https://pypi.org/project/MacroPy/1.0.3/", "requires_dist": null, "requires_python": null, "summary": "Macros for Python: Quasiquotes, Case Classes, LINQ and more!", "version": "1.0.3" }, "last_serial": 812179, "releases": { "0.1": [ { "comment_text": "", "digests": { "md5": "2445d7bb41c06b6d002df7e4dc47b8fc", "sha256": "23757233640b1b2c4618efe7b9d69e00ecf6168c07a7804326bc21977e449456" }, "downloads": -1, "filename": "MacroPy-0.1.zip", "has_sig": false, "md5_digest": "2445d7bb41c06b6d002df7e4dc47b8fc", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 1733, "upload_time": "2013-05-06T19:02:24", "url": "https://files.pythonhosted.org/packages/1d/27/828e25d0afed5f601e9cab69b1f651582a8ecd1d59e442e8f7c83d7ca0e5/MacroPy-0.1.zip" } ], "0.1.1": [ { "comment_text": "", "digests": { "md5": "ad21c15bb3fa740553c3ea0207ae1cd6", "sha256": "1df45d33a9973f1f9b0c0061cc8a2f08bb5178ffff261b018f0f9eb68a0089e9" }, "downloads": -1, "filename": "MacroPy-0.1.1.zip", "has_sig": false, "md5_digest": "ad21c15bb3fa740553c3ea0207ae1cd6", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 30925, "upload_time": "2013-05-06T19:06:30", "url": "https://files.pythonhosted.org/packages/e2/2f/9b4576e8097eb0d09256dc6a37e9980a4dd7d3abdaea4c3ce84195c63216/MacroPy-0.1.1.zip" } ], "0.1.2": [ { "comment_text": "", "digests": { "md5": "ce9f3de16a3eef640c5ea5ea845c41fa", "sha256": "23c826143f9180aea830ec0456961762ee244b4c8d1574bc9e10fcc30849e357" }, "downloads": -1, "filename": "MacroPy-0.1.2.zip", "has_sig": false, "md5_digest": "ce9f3de16a3eef640c5ea5ea845c41fa", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 32484, "upload_time": "2013-05-08T20:01:03", "url": "https://files.pythonhosted.org/packages/ae/fe/559d480ded7ba585478950a0516cd9d7b5dd7e576a985b1de45a708356aa/MacroPy-0.1.2.zip" } ], "0.1.3": [ { "comment_text": "", "digests": { "md5": "1cd3242f97aa81dda8f8c51957cdef04", "sha256": "39ec4259b546ce47c246ef328de86681ea5dc3d0ebf22cf2cf09a113cd2fcee8" }, "downloads": -1, "filename": "MacroPy-0.1.3.zip", "has_sig": false, "md5_digest": "1cd3242f97aa81dda8f8c51957cdef04", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 40030, "upload_time": "2013-05-14T15:52:40", "url": "https://files.pythonhosted.org/packages/03/48/478896a613375b813ef6bafb6427239644b8e749102bf5bc1d94a2f16e23/MacroPy-0.1.3.zip" } ], "0.1.4": [ { "comment_text": "", "digests": { "md5": "c8c93f3a7f2d4c9f1bd44695da03b171", "sha256": "8f689360e29857212dbe3cfbb179583f27bcfd1ccd251de7b4dfc4e594f3e297" }, "downloads": -1, "filename": "MacroPy-0.1.4.zip", "has_sig": false, "md5_digest": "c8c93f3a7f2d4c9f1bd44695da03b171", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 39640, "upload_time": "2013-05-14T15:54:56", "url": "https://files.pythonhosted.org/packages/c4/90/748b5806ab9d6b5b66356384081c40124d89736da02899831a2cfd35442f/MacroPy-0.1.4.zip" } ], "0.1.5": [ { "comment_text": "", "digests": { "md5": "2a90a5e5f121299d79a849f73139cb1a", "sha256": "4328fdf922cafd6b09fdb9b4704b43a7c2a1c27a41e8931b339f91619b68d2ad" }, "downloads": -1, "filename": "MacroPy-0.1.5.zip", "has_sig": false, "md5_digest": "2a90a5e5f121299d79a849f73139cb1a", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 40042, "upload_time": "2013-05-14T16:09:37", "url": "https://files.pythonhosted.org/packages/f1/07/f2ce6770efd158e5ec81dcc543a7dff69b566cf55727deb2ee5471eebc8c/MacroPy-0.1.5.zip" } ], "0.1.6": [ { "comment_text": "", "digests": { "md5": "f09e86a96dfee62ea7a6cdc4b33f1a42", "sha256": "70d27d249ab4478f8bd90759cc85f65eb4ca11dc6365250233c16560c25cd285" }, "downloads": -1, "filename": "MacroPy-0.1.6.zip", "has_sig": false, "md5_digest": "f09e86a96dfee62ea7a6cdc4b33f1a42", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 40479, "upload_time": "2013-05-14T17:37:00", "url": "https://files.pythonhosted.org/packages/3b/0d/3388ea91905a7c8c1126bfc144bc0c9981ecad9692f69c4c386d8559da49/MacroPy-0.1.6.zip" } ], "0.1.7": [ { "comment_text": "", "digests": { "md5": "ce8eaff8aa7f3db9e43b8a644bdd179c", "sha256": "967448e2fb901e50536bea57864567962aa7ab901789c2d61848a5bea05be477" }, "downloads": -1, "filename": "MacroPy-0.1.7.zip", "has_sig": false, "md5_digest": "ce8eaff8aa7f3db9e43b8a644bdd179c", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 42126, "upload_time": "2013-05-17T01:08:14", "url": "https://files.pythonhosted.org/packages/8a/0e/b99e04bdd50a007223a4b9be86592a4b3c1063fe3fde3567d3af1cd4d613/MacroPy-0.1.7.zip" } ], "0.1.8": [ { "comment_text": "", "digests": { "md5": "3486e8764ab9895d77f5da953e313585", "sha256": "32dfbb748f6c123f1ee91d080d5543bc0532b8b211b83fe5dae0379f26b2a5a5" }, "downloads": -1, "filename": "MacroPy-0.1.8.zip", "has_sig": false, "md5_digest": "3486e8764ab9895d77f5da953e313585", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 43836, "upload_time": "2013-05-29T16:14:44", "url": "https://files.pythonhosted.org/packages/f1/52/a512764e731e5465ca0521348e841be562f277f620dac7cbfea67eae4ea4/MacroPy-0.1.8.zip" } ], "0.2.0": [ { "comment_text": "", "digests": { "md5": "0322e64e92ada8743454392faf95f4bc", "sha256": "b3032bdb723e6355cbb71eac066e9b3029018f5d71cb55695d41448ca44ef257" }, "downloads": -1, "filename": "MacroPy-0.2.0.zip", "has_sig": false, "md5_digest": "0322e64e92ada8743454392faf95f4bc", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 52602, "upload_time": "2013-06-01T12:57:18", "url": "https://files.pythonhosted.org/packages/98/7b/7de52ca6e168619a32f3f863f24d4ee12e7cd2cab620b97bb3ba423efb36/MacroPy-0.2.0.zip" } ], "1.0.0": [ { "comment_text": "", "digests": { "md5": "eb4e42613ea266089efa0a269944ad55", "sha256": "fa746b762edb5f64c6c916a55fc900a0e5615a3d363a50ebd4b9b674e7687e19" }, "downloads": -1, "filename": "MacroPy-1.0.0.zip", "has_sig": false, "md5_digest": "eb4e42613ea266089efa0a269944ad55", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 72636, "upload_time": "2013-06-28T16:00:03", "url": "https://files.pythonhosted.org/packages/f8/85/cc690eb0c351e90e5b59b15d4acf9eeb65b218d339b5c481680748cd4ab1/MacroPy-1.0.0.zip" } ], "1.0.1": [ { "comment_text": "", "digests": { "md5": "2dceab421123a8a9a8b084a84d89abd5", "sha256": "a7d9662e7b370f50faaf5fd924191af74c659bcc6a750e7ac65077efc4347c52" }, "downloads": -1, "filename": "MacroPy-1.0.1.zip", "has_sig": false, "md5_digest": "2dceab421123a8a9a8b084a84d89abd5", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 74410, "upload_time": "2013-07-05T23:37:06", "url": "https://files.pythonhosted.org/packages/3d/2e/45b17ec505a1093f5e9a1bf7c66861ebb9778237ce5844691f23dafe476f/MacroPy-1.0.1.zip" } ], "1.0.1.1": [ { "comment_text": "", "digests": { "md5": "61470138133c78c0f6ec7807ab6845b6", "sha256": "b909a933bebfa92d1815f3712c9540b25c2f4b831ad26a0f2b18a69b9e7a7a83" }, "downloads": -1, "filename": "MacroPy-1.0.1.1.zip", "has_sig": false, "md5_digest": "61470138133c78c0f6ec7807ab6845b6", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 46136, "upload_time": "2013-07-05T23:39:25", "url": "https://files.pythonhosted.org/packages/b0/72/be827f3a36ad9b282898713797dc3e069a1581702aa7dab3427172fd7584/MacroPy-1.0.1.1.zip" } ], "1.0.2": [ { "comment_text": "", "digests": { "md5": "a6ef3bb2da59cfe2d96d55ec31424c5c", "sha256": "3aa72af3fe30fc1d345b4088d9be6cb7a2dc6ef7cdc40394ccb14bcfac083adc" }, "downloads": -1, "filename": "MacroPy-1.0.2.zip", "has_sig": false, "md5_digest": "a6ef3bb2da59cfe2d96d55ec31424c5c", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 45958, "upload_time": "2013-07-05T23:43:15", "url": "https://files.pythonhosted.org/packages/db/c0/bd9ad573d440fc1cff0fcb7ad84cb176b884b6ecf09a898f2fd7551756eb/MacroPy-1.0.2.zip" } ], "1.0.3": [ { "comment_text": "", "digests": { "md5": "f403377b06ed303cfc5cad0d8ce2f29d", "sha256": "e667550a9887db625fb1ee1fee8cdadb02bee2d748ade8620d7d082463f0117b" }, "downloads": -1, "filename": "MacroPy-1.0.3.zip", "has_sig": false, "md5_digest": "f403377b06ed303cfc5cad0d8ce2f29d", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 36817, "upload_time": "2013-07-09T22:43:23", "url": "https://files.pythonhosted.org/packages/f2/7f/84ace573b16d10e2d930ecfb90933e77b14fa2dc12064b3b68a5c0ff5579/MacroPy-1.0.3.zip" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "f403377b06ed303cfc5cad0d8ce2f29d", "sha256": "e667550a9887db625fb1ee1fee8cdadb02bee2d748ade8620d7d082463f0117b" }, "downloads": -1, "filename": "MacroPy-1.0.3.zip", "has_sig": false, "md5_digest": "f403377b06ed303cfc5cad0d8ce2f29d", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 36817, "upload_time": "2013-07-09T22:43:23", "url": "https://files.pythonhosted.org/packages/f2/7f/84ace573b16d10e2d930ecfb90933e77b14fa2dc12064b3b68a5c0ff5579/MacroPy-1.0.3.zip" } ] }