data Maybe a = Just a | Nothing
Maybe a
Just :: a -> Maybe a
Nothing :: Maybe a
先定义maxin,返回一个列表中的最大值。
maxin :: Ord a => [a] -> a
借助Maybe可以写一个可以处理错误信息的maxin2。用到了Pattern matching。
maxin2 :: Ord a => [a] -> Maybe a
maxin2 [ ] = Nothing
maxin2 l = Just (maxin l)