我想在 Haskell 函数中包含多个 case 语句(请参阅下面的假设函数示例)。
但是,它不是合法的 Haskell。有什么更好的方法来完成同样的事情?此外,如果 case 语句没有返回任何内容,而只是设置了一些值,那么为什么在一个函数中有多个 case 语句是不合法的呢?
(我会在第 5 行收到“输入‘case’的解析错误”)
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."
...然后它会编译。