haskell - 你如何确定一个类型是否是一个函子在haskell中?
问题描述
我有一个数据类型:
data Tree a = Leaf | Branch a (Tree a) (Tree a)
我想确定,不仅是这种数据类型,还有其他数据类型,比如 String,如果这些数据类型是符合法律的 functor 实例(https://hackage.haskell.org/package/base-4.14.0.0/ docs/Data-Functor.html)。该链接表明,如果一个类型具有函数 fmap,则可以证明它是函子,给定任何类型 a 和 b,它允许您应用任何类型的函数 (a -> b) 将 fa 转换为 fb,保留f的结构。我将如何测试我的 Tree 数据类型或 String 数据类型?
解决方案
推荐阅读
- c++ - 如何为具有初始化列表构造函数以外的类成员设置默认值
- css - 仅 Iphone 无法渲染移动菜单 - 高度不同?
- azure-data-factory - 如何在 Azure 数据工厂中检查日期格式
- python - 如何从 Tensorflow 中的单个张量创建张量列表,反之亦然
- json - 将 json 键值(又是 dict)处理到列表中,xlsxwriter 不接受 dict
- spring-boot - java.library.path 中没有 mssql-jdbc_auth-8.4.1.x64
- server - 从开发人员的角度来看,后端究竟是如何工作的?
- node.js - 自定义 Keystonejs 服务器端函数:“没有名为‘public’的可执行架构”错误
- php - PHP中以字符串开头的标签名称获取元素
- mysql - 如何将 datetime.datetime 转换为 datetime.date?