文件名称:pynads:Python 中 monad 的愚蠢实现
文件大小:71KB
文件格式:ZIP
更新时间:2024-06-28 00:41:32
Python
#pynads monad 只是一个内函子范畴中的幺半群,有什么问题? 只是尝试在 Python 中实现 monad。 还有一点点元类的废话是很好的衡量标准! 不要太当真,这只是一个玩具项目。 不过,我足以包含一个测试套件。 快速示例 目前, Maybe 、 Either 、 List 、 Reader 、 State和Writer都以完整或部分方式实现。 我还包含了一个名为Map的应用字典实例。 pynads还将导出别名为Function和R Reader ,但这些解析为原始 Reader 类。 ###一个真正的 10+ 开发人员示例 每个 Python 库都需要能够处理 FizzBuzz! 这被普遍认为是面试的首要现场编码测试。 from pynads import Writer from pynads . funcs import multibind from
【文件预览】:
pynads-master
----pynads()
--------abc()
--------funcs()
--------concrete()
--------__init__.py(63B)
--------utils()
----tests()
--------test_utils.py(2KB)
--------test_maybe.py(3KB)
--------test_funcs_pure.py(590B)
--------test_state.py(2KB)
--------test_utils_monoidal.py(3KB)
--------test_applicative.py(1KB)
--------test_utils_decorator.py(3KB)
--------test_functors.py(490B)
--------test_reader.py(2KB)
--------test_monad.py(869B)
--------test_list.py(5KB)
--------test_monoid.py(744B)
--------test_identity_monad.py(453B)
--------test_funcs_monoids.py(2KB)
--------test_writer.py(2KB)
--------test_either.py(2KB)
--------test_funcs_lifted.py(1KB)
--------test_mempty.py(1KB)
--------test_container.py(416B)
--------test_map.py(2KB)
----LICENSE(1KB)
----setup.py(1KB)
----.gitignore(749B)
----README.md(10KB)
----notes()
--------do_notation.ipynb(10KB)
--------do_notation_rewriter.ipynb(5KB)