{ "info": { "author": "Bryan Thornbury", "author_email": "author@example.com", "bugtrack_url": null, "classifiers": [ "Programming Language :: Python :: 2", "Programming Language :: Python :: 2.6", "Programming Language :: Python :: 2.7", "Programming Language :: Python :: 3", "Programming Language :: Python :: 3.3", "Programming Language :: Python :: 3.4", "Programming Language :: Python :: 3.5" ], "description": "A Better Lambda\n~~~~~~~~~~~~~~~\n\n| |PyPI version|\n| |Build Status|\n| *Supports Python 2.6 - 3.5*\n\n**What is this?**\n\nA better python lambda syntax for your anonymous function needs.\n\nWrite ``a = (x) > x`` instead of ``a = lambda x: x``. See below for\nsyntax caveats.\n\nGet started immediately: ``pip install lambdazen``\n\n.. code:: python\n\n from lambdazen import zen\n def otherfunc(*args):\n print sum(args)\n\n # The zen decorator allows you to define lambdas with a better syntax\n @zen\n def example():\n example.epic = (x, y, z) > otherfunc(x, y, z)\n\n # Multiline lambdas are a tuple or list of statements\n # The assignment operator inside is << instead of =\n # The last statement is the return value\n example.multiline = (x, y, z) > (\n s << otherfunc(x, y, z),\n s\n )\n\n # Call function so the lambdas are bound to function attributes\n example()\n\n example.epic(1,2,3)\n >>> 6\n\n example.multiline(1,2,3)\n >>> 6\n\n**Caveats**\n\n- better lambdas can only be defined in a function with the ``@zen``\n attribute\n- any other code in this function will be executed, it\u2019s best to use\n the function as a container of lambdas\n\n**How does it work**\n\n`Read the story`_\n\nTLDR; Runtime in-memory source rewriting and recompilation\n\n**Additional Examples**\n\n.. code:: python\n\n from lambdazen import zen\n\n # Lambdas don't need to be bound to the function\n @zen\n def normalizeString(nS):\n transforms = [\n (s) > s.strip(),\n (s) > s.lower(),\n (s) > s.replace(' ', '_')]\n\n apply_all = (transforms_list, s) > (\n is_done << (len(transforms_list) == 0),\n current_transform << transforms_list[0] if not is_done else None,\n remaining_transforms << transforms_list[1:] if not is_done else None,\n current_transform(apply_all(remaining_transforms, s)) if not is_done else s)\n\n return apply_all(transforms, nS)\n\n normalizeString(\"Abraham Lincoln\")\n >>> \"abraham_lincoln\"\n\n.. _Read the story: https://github.com/brthornbury/lambdazen/blob/master/HowItWorks.md\n\n.. |PyPI version| image:: https://badge.fury.io/py/lambdazen.svg\n :target: https://badge.fury.io/py/lambdazen\n.. |Build Status| image:: https://travis-ci.org/brthornbury/lambdazen.svg?branch=master\n :target: https://travis-ci.org/brthornbury/lambdazen", "description_content_type": null, "docs_url": null, "download_url": "UNKNOWN", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "http://github.com/brthornbury/lambdazen", "keywords": null, "license": "MIT", "maintainer": null, "maintainer_email": null, "name": "lambdazen", "package_url": "https://pypi.org/project/lambdazen/", "platform": "UNKNOWN", "project_url": "https://pypi.org/project/lambdazen/", "project_urls": { "Download": "UNKNOWN", "Homepage": "http://github.com/brthornbury/lambdazen" }, "release_url": "https://pypi.org/project/lambdazen/0.1.7/", "requires_dist": null, "requires_python": null, "summary": "Syntax changes for python lambdas.", "version": "0.1.7" }, "last_serial": 2348938, "releases": { "0.1": [ { "comment_text": "", "digests": { "md5": "3ea0b82ecd234fb84382979a6f7cf648", "sha256": "db5782d082cd81c7ff7b56d4ff703a14b717667a070b93da26fe5f3e33340c3d" }, "downloads": -1, "filename": "lambdazen-0.1.tar.gz", "has_sig": false, "md5_digest": "3ea0b82ecd234fb84382979a6f7cf648", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 1424, "upload_time": "2016-09-10T19:36:59", "url": "https://files.pythonhosted.org/packages/03/f1/8607deec31e39c33976b9ffa8164feddb59b8fc3796ade2dfa17f49edeba/lambdazen-0.1.tar.gz" } ], "0.1.1": [ { "comment_text": "", "digests": { "md5": "212069deae136d0d45c12c7b31b71647", "sha256": "719d9889fd46c267c60002acd70b012b98f48aeaee2b74647ed2065e131dc103" }, "downloads": -1, "filename": "lambdazen-0.1.1.tar.gz", "has_sig": false, "md5_digest": "212069deae136d0d45c12c7b31b71647", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 1933, "upload_time": "2016-09-10T19:48:10", "url": "https://files.pythonhosted.org/packages/ea/fc/3a3fa639ec6a95e41eda1cf58661aa739c34c0b031abc41176deecaf37f3/lambdazen-0.1.1.tar.gz" } ], "0.1.2": [ { "comment_text": "", "digests": { "md5": "06213ac758a59fa0c0634508fa0965e9", "sha256": "1c88a1b8f82e8f68048f0858c77fff66b41196001d1b87ecca0995f66f53c452" }, "downloads": -1, "filename": "lambdazen-0.1.2.tar.gz", "has_sig": false, "md5_digest": "06213ac758a59fa0c0634508fa0965e9", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 1947, "upload_time": "2016-09-10T19:50:20", "url": "https://files.pythonhosted.org/packages/32/48/7c86ddac93a46fc8f5cd09d2a2be48bc6aaae6eb68f1ae5b3f25b6f8de02/lambdazen-0.1.2.tar.gz" } ], "0.1.3": [ { "comment_text": "", "digests": { "md5": "bf213fa1f9a41b6e96ccc5e97aa27be3", "sha256": "fc2e4be15005dfb35502503451dda6c37caacfba78d72332fd3cbf43c2f83a9a" }, "downloads": -1, "filename": "lambdazen-0.1.3.tar.gz", "has_sig": false, "md5_digest": "bf213fa1f9a41b6e96ccc5e97aa27be3", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 2003, "upload_time": "2016-09-17T08:19:39", "url": "https://files.pythonhosted.org/packages/23/c0/6ac13543c869ec6d8047b43127a95b880a97c1fc8b61a2a86338c8f0f0a7/lambdazen-0.1.3.tar.gz" } ], "0.1.5": [ { "comment_text": "", "digests": { "md5": "afa09419d70bc8396436e7377ed8b622", "sha256": "326614aefd9c4fe1b6604783c60bd9befc35d4925530ebd901f99431d31f8a66" }, "downloads": -1, "filename": "lambdazen-0.1.5.tar.gz", "has_sig": false, "md5_digest": "afa09419d70bc8396436e7377ed8b622", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 2833, "upload_time": "2016-09-18T04:26:47", "url": "https://files.pythonhosted.org/packages/91/4f/d2c9153a72fce64f01fd590a85d51a353228e70ae91cb501397e1f4add57/lambdazen-0.1.5.tar.gz" } ], "0.1.6": [ { "comment_text": "", "digests": { "md5": "6ad626f6dd91195ac8bbc3674d32efcf", "sha256": "aa8492bd283bf21d6025382ae41a9418f4432276f95888d31e48bc4552f9c794" }, "downloads": -1, "filename": "lambdazen-0.1.6.tar.gz", "has_sig": false, "md5_digest": "6ad626f6dd91195ac8bbc3674d32efcf", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 3447, "upload_time": "2016-09-18T06:39:40", "url": "https://files.pythonhosted.org/packages/d7/dc/60a5114a7c05f858bbf8ba061ad74d917b824721bf390589ebd0ba02ef1e/lambdazen-0.1.6.tar.gz" } ], "0.1.7": [ { "comment_text": "", "digests": { "md5": "be1f6ec116ac13627852c92f0a871d4f", "sha256": "a7bb135de9d96853185b13bae07c95b21f0ac7d0ac2750b9605d616f89999930" }, "downloads": -1, "filename": "lambdazen-0.1.7.tar.gz", "has_sig": false, "md5_digest": "be1f6ec116ac13627852c92f0a871d4f", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 3785, "upload_time": "2016-09-18T10:45:52", "url": "https://files.pythonhosted.org/packages/0b/6b/f8a72861c9dc87bb615a9b4c803665c5c2f48528b81149ea4d6a9f7488ef/lambdazen-0.1.7.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "be1f6ec116ac13627852c92f0a871d4f", "sha256": "a7bb135de9d96853185b13bae07c95b21f0ac7d0ac2750b9605d616f89999930" }, "downloads": -1, "filename": "lambdazen-0.1.7.tar.gz", "has_sig": false, "md5_digest": "be1f6ec116ac13627852c92f0a871d4f", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 3785, "upload_time": "2016-09-18T10:45:52", "url": "https://files.pythonhosted.org/packages/0b/6b/f8a72861c9dc87bb615a9b4c803665c5c2f48528b81149ea4d6a9f7488ef/lambdazen-0.1.7.tar.gz" } ] }