./devel/hs-safe, Library for safe (pattern match free) functions

[ CVSweb ] [ Homepage ] [ RSS ] [ Required by ] [ Add to tracker ]


Branch: pkgsrc-2021Q3, Version: 0.3.19nb1, Package name: hs-safe-0.3.19nb1, Maintainer: szptvlfn

A library wrapping Prelude/Data.List functions that can throw exceptions, such
as head and !!. Each unsafe function has up to four variants, e.g. with tail:

* tail :: [a] -> [a], raises an error on tail [].

* tailMay :: [a] -> Maybe [a], turns errors into Nothing.

* tailDef :: [a] -> [a] -> [a], takes a default to return on errors.

* tailNote :: String -> [a] -> [a], takes an extra argument which supplements
the error message.

* tailSafe :: [a] -> [a], returns some sensible default if possible,
[] in the case of tail.

This package is divided into three modules:

* Safe contains safe variants of Prelude and Data.List functions.

* Safe.Foldable contains safe variants of Foldable functions.

* Safe.Exact creates crashing versions of functions like zip (errors if
the lists are not equal) and take (errors if there are not enough elements),
then wraps them to provide safe variants.


Master sites:

SHA1: bd8e382f951625d178fbf9e0231704e1931b6f94
RMD160: 1331539a2324bf052eacc66834f27a05c6924436
Filesize: 11.003 KB

Version history: (Expand)