LINUX.ORG.RU

История изменений

Исправление Miguel, (текущая версия) :

При паттерн-матчинге слева не может быть произвольная функция, только конструктор. (++) — не конструктор списка. У списков два конструктора: [] и (:). У тебя в первой альтернативе конструктор [], во второй — оба (а именно, там написано "(:) c []"), а в третьей написано "(++) ((:) c []) b"

И, кстати, вторая альтернатива не нужна, она — частный случай третьей.

Исходная версия Miguel, :

При паттерн-матчинге слева не может быть произвольная функция, только конструктор. (++) — не конструктор списка. У списков два конструктора: [] и (:). У тебя в первой альтернативе конструктор [], во второй — оба (а именно, там написано "(:) c []"), а в третьей написано "(++) ((:) c []) b)"

И, кстати, вторая альтернатива не нужна, она — частный случай третьей.