ListUtil.hs
module ListUtil(getMaximum) where getMaximum :: [Integer] -> (Maybe Integer) getMaximum [] = Nothing getMaximum (x:xs) = Just (getMax x xs) getMax :: Integer -> [Integer] -> Integer getMax currentMax [] = currentMax getMax currentMax (x:xs) | (currentMax < x) = getMax x xs | otherwise = getMax currentMax xs
*ListUtil> :load ListUtil.hs [1 of 1] Compiling ListUtil ( ListUtil.hs, interpreted ) Ok, modules loaded: ListUtil. *ListUtil> *ListUtil> getMaximum [1, 20, 98, 3, 4, 987, 123, 432] Just 987 *ListUtil> *ListUtil> getMaximum [] Nothing
No comments:
Post a Comment