Этого типа может бытьПочему в базовых библиотеках Haskell нет типа «непустого списка»?
data NonEmptyList a = NEL a [a]
Функция head
, tail
, и другие станут методами вновь созданного Listable
класса типа. Некоторые функции уже могут вписываться в существующий тип класса (карты/складки/обходы/монады).
Почему такой тип не является частью стандартной библиотеки Haskell?
Как бы вы создать экземпляр этого типа? – Gabe
Вы можете найти непустые списки в пакете ['semigroups'] (http://hackage.haskell.org/package/semigroups-0.16.0.1/docs/Data-List-NonEmpty.html). – gallais