范畴论中若干概念的实现

pycategories的Python项目详细描述


master pipelinemaster coverage

pycategories是一个python 3库,它实现了category theory中的思想,如monoids、functor和monad。它提供了一个受haskell影响的接口,用于定义那些类型类的实例,并直接定义了几个实例,例如maybe monad:

>>> from categories import apply
>>> from categories.maybe import Just, Nothing
>>> f = Just(lambda x: x ** 2)
>>> x = Just(17)
>>> apply(f, x)
Just(289)
>>> apply(f, Nothing())
Nothing

或者定义自己的类型类实例:

>>> from categories import mappend, mempty, monoid
>>> monoid.instance(dict, lambda: {}, lambda a, b: dict(**a, **b))
>>> mappend({'foo': 'bar'}, {'rhu': 'barb'})
{'foo': 'bar', 'rhu': 'barb'}

安装

pip install pycategories

要克隆repo并安装用于开发的依赖项:

git clone https://gitlab.com/danielhones/pycategories
cd pycategories
pip install -e .[dev]

许可证

pycategories是根据MIT License

文档

文档可在pycategories.readthedocs.io

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java JavaFX 2.2字体呈现有问题   java如何从html文本中获取img url   java Spring数据REST存储库404   java从jar文件复制目录   java Spring引导无法满足自定义JPA请求   hadoop将值从Java操作传递到Oozie工作流中的下一个Java操作   java如何修复“Android资源链接失败”?使用NavigationView和片段   c3p0数据源的java独立日志文件   java如何从BufferImage生成图像   java JDBC SQL SELECT查询和方法运行不正常   从Android Studio中的java类获取资源   java EclipseLink MySQLSyntaxErrorException找不到错误   java我应该如何在mysql数据库中自动存储我的gps坐标?   ApacheFlex应该为BlazeDS实现Java DTO的可序列化   java为什么我的组件彼此相邻?   java在dao层中的多种方法   具有可配置凭据的java Spring WebServiceClient   java如何在Spring Boot中获取每个请求中的当前用户?