haskell
Partial functions from the base library, such as @head@ and @!!@, modified
to return more descriptive error messages, programmer defined error messages,
@Maybe@ wrapped results and default values.
These functions can be used to reduce the number of unsafe pattern matches in
your code.
ndmitchell/safe#readme