Safe wrappers for partial list functions, supporting MonadThrow
Description
Data.List includes a handful of partial functions that throw uncatchable
exceptions when given empty lists. This package provides safe alternatives for
such functions based on MonadThrow which can provide a variety of failure
cases: Nothing, IOException, Left, etc.