不是函子(或不可遍历)的可折叠示例?

2024-03-20

A Foldable http://hackage.haskell.org/packages/archive/base/latest/doc/html/Data-Foldable.html实例可能是某种容器,因此也可能是Functor以及。的确,this http://www.haskell.org/haskellwiki/Foldable_and_Traversable says

A Foldable类型也是一个容器(尽管该类在技术上并不需要Functor, 有趣的Foldable都是Functors).

那么有没有一个例子Foldable这自然不是一个Functor or a Traversable? (也许 Haskell wiki 页面错过了:-))


这是一个完全参数化的示例:

data Weird a = Weird a (a -> a)

instance Foldable Weird where
  foldMap f (Weird a b) = f $ b a

Weird不是一个Functor因为a发生在消极的位置。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

不是函子(或不可遍历)的可折叠示例? 的相关文章

随机推荐