diff --git a/doc/coding_style/comment_1_70521cf79ad06832b1d73fc2c20c68ec._comment b/doc/coding_style/comment_1_70521cf79ad06832b1d73fc2c20c68ec._comment new file mode 100644 index 0000000000..a8200f856c --- /dev/null +++ b/doc/coding_style/comment_1_70521cf79ad06832b1d73fc2c20c68ec._comment @@ -0,0 +1,20 @@ +[[!comment format=mdwn + username="https://www.google.com/accounts/o8/id?id=AItOawnq-RfkVpFN15SWvQ2lpSGAi0XpNQuLxKM" + nickname="Yuval" + subject="What about safe?" + date="2014-07-06T10:45:59Z" + content=""" +https://hackage.haskell.org/package/safe + +> 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. +"""]]