<div style="text-align: center; display: flex; flex-direction: row; justify-content: center; align-items: center;">
<img alt="Logo" height="150" src="logo.svg" width="150"/>
</div>
# Monad STD
<div style="text-align: center;">
[![GitHub Workflow Status (with event)](https://img.shields.io/github/actions/workflow/status/Embers-of-the-Fire/monad-std/test-python-package.yml?branch=main&logo=github)](https://github.com/Embers-of-the-Fire/monad-std/actions)
![python version](https://img.shields.io/badge/python-%E2%89%A53.8-blue?logo=python)
[![codecov](https://codecov.io/gh/Embers-of-the-Fire/monad-std/graph/badge.svg?token=FIXN2JM4QG)](https://codecov.io/gh/Embers-of-the-Fire/monad-std)
[![PyPI - Downloads](https://img.shields.io/pypi/dm/monad-std?logo=pypi)](https://pypi.org/project/monad-std/)
</div>
`monad_std` is a library that provides some useful Rust-styled utilities for using monads in Python.
<div style="text-align: center;">
[Documentation](https://embers-of-the-fire.github.io/monad-std/) | [PyPI Page](https://pypi.org/project/monad-std/)
</div>
## Quick Start
To install this library, simply use your favorite package manager, here we use pure pip.
```bash
pip install monad-std
```
Then, import the library:
```python-repl
>>> from monad_std import *
>>> Ok(2)
Result::Ok(2)
```
Now you could use the utilities this library provides. For more information and examples, see the documentation above.
For a better guide, see [the documentation's quick start guide](https://embers-of-the-fire.github.io/monad-std/quick%20start/).
## Contribution
Any issue and pull request is welcomed, and you can directly make a pr for new features or open an issue for bug reports.
## Future Plan
Until now, this library provides the following features:
- `monad_std.Option`: An optional value.
- `monad_std.Result`: A structure containing a success value or an error.
- `monad_std.Ok`: A successful value.
- `monad_std.Err`: An error value.
- `monad_std.std_types`: Wrapped api around std types.
- `monad_std.iter`: Iterator interface with functors and monads support.
- `monad_std.Either`:
A structure containing two type of values, but not that specific like `monad_std.Result`.
(Currently under development.)
Raw data
{
"_id": null,
"home_page": "https://embers-of-the-fire.github.io/monad-std/",
"name": "monad-std",
"maintainer": "",
"docs_url": null,
"requires_python": ">=3.8,<4.0",
"maintainer_email": "",
"keywords": "monad,functional,rust,pure-python,fp",
"author": "Embers-of-the-Fire",
"author_email": "stellarishs@163.com",
"download_url": "https://files.pythonhosted.org/packages/0d/d2/0d29bcae999f08222e0161d69492f325c114fbebfb76ce06147ca9505dd7/monad_std-0.9.0.tar.gz",
"platform": null,
"description": "<div style=\"text-align: center; display: flex; flex-direction: row; justify-content: center; align-items: center;\">\n<img alt=\"Logo\" height=\"150\" src=\"logo.svg\" width=\"150\"/>\n</div>\n\n# Monad STD\n\n<div style=\"text-align: center;\">\n\n[![GitHub Workflow Status (with event)](https://img.shields.io/github/actions/workflow/status/Embers-of-the-Fire/monad-std/test-python-package.yml?branch=main&logo=github)](https://github.com/Embers-of-the-Fire/monad-std/actions)\n![python version](https://img.shields.io/badge/python-%E2%89%A53.8-blue?logo=python)\n[![codecov](https://codecov.io/gh/Embers-of-the-Fire/monad-std/graph/badge.svg?token=FIXN2JM4QG)](https://codecov.io/gh/Embers-of-the-Fire/monad-std)\n[![PyPI - Downloads](https://img.shields.io/pypi/dm/monad-std?logo=pypi)](https://pypi.org/project/monad-std/)\n\n</div>\n\n`monad_std` is a library that provides some useful Rust-styled utilities for using monads in Python.\n\n<div style=\"text-align: center;\">\n\n[Documentation](https://embers-of-the-fire.github.io/monad-std/) | [PyPI Page](https://pypi.org/project/monad-std/)\n\n</div>\n\n## Quick Start\n\nTo install this library, simply use your favorite package manager, here we use pure pip.\n\n```bash\npip install monad-std\n```\n\nThen, import the library:\n\n```python-repl\n>>> from monad_std import *\n>>> Ok(2)\nResult::Ok(2)\n```\n\nNow you could use the utilities this library provides. For more information and examples, see the documentation above.\n\nFor a better guide, see [the documentation's quick start guide](https://embers-of-the-fire.github.io/monad-std/quick%20start/).\n\n## Contribution\n\nAny issue and pull request is welcomed, and you can directly make a pr for new features or open an issue for bug reports.\n\n## Future Plan\n\nUntil now, this library provides the following features:\n\n- `monad_std.Option`: An optional value.\n- `monad_std.Result`: A structure containing a success value or an error.\n - `monad_std.Ok`: A successful value.\n - `monad_std.Err`: An error value.\n- `monad_std.std_types`: Wrapped api around std types.\n- `monad_std.iter`: Iterator interface with functors and monads support.\n- `monad_std.Either`:\n A structure containing two type of values, but not that specific like `monad_std.Result`.\n (Currently under development.)\n",
"bugtrack_url": null,
"license": "MIT OR Apache-2.0",
"summary": "A library of rust-styled monad utils for python.",
"version": "0.9.0",
"project_urls": {
"Homepage": "https://embers-of-the-fire.github.io/monad-std/",
"Repository": "https://github.com/Embers-of-the-Fire/monad-std"
},
"split_keywords": [
"monad",
"functional",
"rust",
"pure-python",
"fp"
],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "881a3935ee378e304a1f6889a768cf78741b8f088b7379cdc82527eeb1972188",
"md5": "b6f56b4d27d26330a30012eb46f37a7c",
"sha256": "c740d9aecb6a5a164606b20dfbb969f2148cea35b5c4e6c12d49ac695fc5fd44"
},
"downloads": -1,
"filename": "monad_std-0.9.0-py3-none-any.whl",
"has_sig": false,
"md5_digest": "b6f56b4d27d26330a30012eb46f37a7c",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": ">=3.8,<4.0",
"size": 54191,
"upload_time": "2024-02-11T02:46:47",
"upload_time_iso_8601": "2024-02-11T02:46:47.901382Z",
"url": "https://files.pythonhosted.org/packages/88/1a/3935ee378e304a1f6889a768cf78741b8f088b7379cdc82527eeb1972188/monad_std-0.9.0-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "0dd20d29bcae999f08222e0161d69492f325c114fbebfb76ce06147ca9505dd7",
"md5": "c411d87dcd7f01ec7ccea25d1e44d9ed",
"sha256": "557e7148e467d672e3d5b1efd222dd6d6b31af560b5ba6508abfb11f9bf0b82f"
},
"downloads": -1,
"filename": "monad_std-0.9.0.tar.gz",
"has_sig": false,
"md5_digest": "c411d87dcd7f01ec7ccea25d1e44d9ed",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.8,<4.0",
"size": 43773,
"upload_time": "2024-02-11T02:46:50",
"upload_time_iso_8601": "2024-02-11T02:46:50.004996Z",
"url": "https://files.pythonhosted.org/packages/0d/d2/0d29bcae999f08222e0161d69492f325c114fbebfb76ce06147ca9505dd7/monad_std-0.9.0.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2024-02-11 02:46:50",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "Embers-of-the-Fire",
"github_project": "monad-std",
"travis_ci": false,
"coveralls": false,
"github_actions": true,
"lcname": "monad-std"
}