Доброй ночи. Подскажите как использовать сопоставление с образцом в охранных выражениях.
Например, есть рабочий код:
isPalindrome'' :: Eq a => [a] -> Bool
isPalindrome'' [] = True
isPalindrome'' [x] = True
isPalindrome'' list
| head list == last list = (isPalindrome' . tail . init) list
| otherwise = False
Пытаюсь преобразовать код к виду:
isPalindrome''' :: Eq a => [a] -> Bool
isPalindrome''' list
| [] = True
| [x] = True
| head list == last list = (isPalindrome' . tail . init) list
| otherwise = False
Интерпретатор пишет, что 'x' не определен. Как можно это исправить ?