Сопоставление с образцом для итерации по списку

Я пытаюсь изучить Haskell из Haskell Road to Logic и наткнулся на такой пример:

    mnmInt :: [Int] -> Int
    mnmInt [] = error "empty list"·
    mnmInt [x] = x
    mnmInt (x:xs) = min x (mnmInt xs)

Я так понимаю функции берут список из Int- Проверяет, если пусто если не проверяет, является ли это списком с 1 int, если да, возвращает x если не подключите mnmInt с параметром xs к мин.

как он достигает базового случая? что означает xs?

минимальная реализация:

   min' :: Int -> Int -> Int
   min' x y | x <= y    = x
            | otherwise = y

не принимает массив.

0
задан raam86 12 July 2013 в 23:08
поделиться