Я хочу включить более одного оператора case в функцию Haskell (пример гипотетической функции см. Ниже).
Однако Haskell не является допустимым.Какой лучший способ сделать то же самое?Кроме того, если операторы case ничего не возвращают, а просто устанавливают какое-то значение, почему не разрешено иметь в функции более одного оператора case?
(я бы получил «ошибку разбора на входе»case '"в строке 5)
tester x y =
case (x < 0) of
True -> "less than zero."
False -> "greater than or equal to zero."
case (y == "foo")
True -> "the name is foo."
False -> "the name is not foo."
Обратите внимание, что если бы моя функция была просто:
tester x y =
case (x < 0) of
True -> "less than zero."
False -> "greater than or equal to zero."
... тогда она скомпилировалась бы.