3 ms·
Haskell has had non-empty lists as a type for a long time: https://hackage.haskell.org/package/base-4.16.0.0/docs/Data-List-NonEmpty.html https://hackage.haskel
by bspammer 5y ago
Haskell has had non-empty lists as a type for a long time: https://hackage.haskell.org/package/base-4.16.0.0/docs/Data-List-NonEmpty.html https://hackage.haskell.org/package/base-4.16.0.0/docs/Data-...
Having partial functions in the Prelude is, as far as I know, widely regarded as a mistake and they are only kept around for backwards compatibility. Anyone writing code nowadays should be using safeHead or non-empty lists.
- oats 5y agoOr pattern matching that takes account of the empty list case. Orrrrr using a fold! I usually find when I start matching on list values that the function could be better expressed with a fold instead.
- Tainnor 5y agoSure, but non-empty lists don't generalise easily to the case where you need the nth element, unless you nest them awkwardly.