Ery*_*ela 6 haskell traversable
我正在编写一段使用的抽象的Haskell代码Traversable。在这种抽象的背后,我希望能够隐藏所有常规的可遍历结构,例如列表,树,地图等,并以特殊情况将其Data.Functor.Identity.Identity作为包含单个值的基本结构。我还想介绍一个“空”结构的情况。这样的“空”可遍历实例是否存在?也许任何图书馆都已经提供了?
我第一次(可能是幼稚的)定义这种实例的尝试如下。是否有意义?
data Empty a = Empty
instance Functor Empty where
fmap _ _ = Empty
instance Foldable Empty where
foldr _ init _ = init
instance Traversable Empty where
sequenceA _ = pure Empty
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
105 次 |
| 最近记录: |