這種類型可能是爲什麼Haskell基礎庫中沒有「非空列表」類型?
data NonEmptyList a = NEL a [a]
功能head
,tail
,和其他人將成爲新創建的Listable
型類的方法。某些函數已經可以適應現有的類型類(maps/fold/traversals/monads)。
爲什麼這樣的類型不是Haskell標準庫的一部分?
這種類型可能是爲什麼Haskell基礎庫中沒有「非空列表」類型?
data NonEmptyList a = NEL a [a]
功能head
,tail
,和其他人將成爲新創建的Listable
型類的方法。某些函數已經可以適應現有的類型類(maps/fold/traversals/monads)。
爲什麼這樣的類型不是Haskell標準庫的一部分?
該類型實際存在。
你必須導入
Data.List.NonEmpty
更多信息:有其中至少有六::http://hackage.haskell.org/package/semigroups-0.16.0.1/docs/Data-List-NonEmpty.html
呃,我真的希望'IsList(NonEmpty a)'沒有被定義.. – MasterMastic
由於GHC 8.0.1,base
目前在Data.List.NonEmpty
一個NonEmpty
列表類型:
https://hackage.haskell.org/package/base-4.9.0.0/docs/Data-List-NonEmpty.html
你如何創建該類型的實例? – Gabe
您可以在['semigroups'](http://hackage.haskell.org/package/semigroups-0.16.0.1/docs/Data-List-NonEmpty.html)包中找到非空列表。 – gallais