Pythonic FP - Functional tools
==============================
PyPI project
`pythonic-fp.fptools
<https://pypi.org/project/pythonic-fp.fptools>`_.
Tools to aid with functional programming in Python yet still endeavoring to
remain Pythonic.
- Functions as first class objects
- Lazy (non-strict) function evaluation
- Maybe monad - representing a possible missing value
- Either monad - left bias either monad representing either a LEFT or RIGHT value
- State monad implementation
- pure FP handling of state (the state monad)
- Classic FP implementation
- the monad encapsulates a state transformation, not a "state"
This PyPI project is part of of the grscheller
`pythonic-fp namespace projects
<https://github.com/grscheller/pythonic-fp/blob/main/README.md>`_
**Warning:** The maintainer intends to break out the first, forth and
fifth modules to their own repos sometime in the near future.
Documentation
-------------
Documentation for this project is hosted on
`GitHub Pages
<https://grscheller.github.io/pythonic-fp/fptools/development/build/html>`_.
Copyright and License
---------------------
Copyright (c) 2023-2025 Geoffrey R. Scheller. Licensed under the Apache
License, Version 2.0. See the LICENSE file for details.
Raw data
{
"_id": null,
"home_page": null,
"name": "pythonic-fp-fptools",
"maintainer": null,
"docs_url": null,
"requires_python": ">=3.12",
"maintainer_email": null,
"keywords": "either, fp, functional, functional programming, lazy, maybe, monad, non-strict",
"author": null,
"author_email": "\"Geoffrey R. Scheller\" <geoffrey@scheller.com>",
"download_url": "https://files.pythonhosted.org/packages/d9/93/48fb94a4ba2e7c325288d7ce8643278ce8456e4f4e1053ee5f766402fc0a/pythonic_fp_fptools-5.0.0.tar.gz",
"platform": null,
"description": "Pythonic FP - Functional tools\n==============================\n\nPyPI project\n`pythonic-fp.fptools\n<https://pypi.org/project/pythonic-fp.fptools>`_.\n\nTools to aid with functional programming in Python yet still endeavoring to\nremain Pythonic.\n\n- Functions as first class objects\n- Lazy (non-strict) function evaluation\n- Maybe monad - representing a possible missing value\n- Either monad - left bias either monad representing either a LEFT or RIGHT value\n- State monad implementation\n\n - pure FP handling of state (the state monad)\n - Classic FP implementation\n\n - the monad encapsulates a state transformation, not a \"state\"\n\nThis PyPI project is part of of the grscheller\n`pythonic-fp namespace projects\n<https://github.com/grscheller/pythonic-fp/blob/main/README.md>`_\n\n**Warning:** The maintainer intends to break out the first, forth and\nfifth modules to their own repos sometime in the near future.\n\nDocumentation\n-------------\n\nDocumentation for this project is hosted on\n`GitHub Pages\n<https://grscheller.github.io/pythonic-fp/fptools/development/build/html>`_.\n\nCopyright and License\n---------------------\n\nCopyright (c) 2023-2025 Geoffrey R. Scheller. Licensed under the Apache\nLicense, Version 2.0. See the LICENSE file for details.\n",
"bugtrack_url": null,
"license": null,
"summary": "Pythonic FP - Functional Programming Tools",
"version": "5.0.0",
"project_urls": {
"Changelog": "https://github.com/grscheller/pythonic-fp-fptools/blob/main/CHANGELOG.rst",
"Documentation": "https://grscheller.github.io/pythonic-fp/fptools/development/build/html/releases.html",
"Homepage": "https://github.com/grscheller/pythonic-fp/blob/main/README.md",
"Source": "https://github.com/grscheller/pythonic-fp-fptools"
},
"split_keywords": [
"either",
" fp",
" functional",
" functional programming",
" lazy",
" maybe",
" monad",
" non-strict"
],
"urls": [
{
"comment_text": null,
"digests": {
"blake2b_256": "3fe3ff0b13eb06251d123658d29278bdec86ccde7981c75a335d780f725931d0",
"md5": "614fbdf10bd66908a8d9cc1287e90a4e",
"sha256": "060543e2082d8f5b91103e7ea3f606a9da4000c80b7f7380bc2b6eec0615088b"
},
"downloads": -1,
"filename": "pythonic_fp_fptools-5.0.0-py3-none-any.whl",
"has_sig": false,
"md5_digest": "614fbdf10bd66908a8d9cc1287e90a4e",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": ">=3.12",
"size": 16855,
"upload_time": "2025-08-03T03:39:07",
"upload_time_iso_8601": "2025-08-03T03:39:07.523639Z",
"url": "https://files.pythonhosted.org/packages/3f/e3/ff0b13eb06251d123658d29278bdec86ccde7981c75a335d780f725931d0/pythonic_fp_fptools-5.0.0-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "d99348fb94a4ba2e7c325288d7ce8643278ce8456e4f4e1053ee5f766402fc0a",
"md5": "a9242794c332e9d37bc452bf277e7336",
"sha256": "6655b4af30749ef50abef2552ef8d8abe6e1bbd3206af6ff2d3029b42f721d31"
},
"downloads": -1,
"filename": "pythonic_fp_fptools-5.0.0.tar.gz",
"has_sig": false,
"md5_digest": "a9242794c332e9d37bc452bf277e7336",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.12",
"size": 24474,
"upload_time": "2025-08-03T03:39:09",
"upload_time_iso_8601": "2025-08-03T03:39:09.111643Z",
"url": "https://files.pythonhosted.org/packages/d9/93/48fb94a4ba2e7c325288d7ce8643278ce8456e4f4e1053ee5f766402fc0a/pythonic_fp_fptools-5.0.0.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2025-08-03 03:39:09",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "grscheller",
"github_project": "pythonic-fp-fptools",
"travis_ci": false,
"coveralls": false,
"github_actions": false,
"lcname": "pythonic-fp-fptools"
}