class (Functor t, Foldable t) => Traversable t where
traverse :: Applicative f => (a -> f b) -> t a -> f (t b)
traverse g = sequenceA . fmap g
sequenceA :: Applicative f => t (f a) -> f (t a)
sequenceA = traverse id
如何使用它同时继承和Traversable的事实?FoldableFunctor
t作为可遍历类型意味着t也是函子类型和可折叠类型。
我看到这t是一个函子类型的事实,即fmap,用于traverse.
t可折叠类型是否在某处使用?
使用折叠式traverse的事实吗?t
使用哪个事实sequenceA:t作为函子类型,t作为可折叠类型,或两者兼而有之?
我们可以定义一个类,它是only 的子类,并且Functor具有以相同方式定义的函数吗?traversesequenceA
谢谢。