Haskell 使用元组定义多个函数

Haskell define multiple functions using tuples

我刚刚遇到一些 Haskell 代码,看起来像这样:

(functionOne, functionTwo)
  | someCondition = (10, "Ten")
  | otherwise     = (20, "Twenty")

从代码的使用方式来看,我认为我理解这段代码的意图,即它只是一种更简洁的编写方式:

functionOne
  | someCondition = 10
  | otherwise     = 20

functionTwo
  | someCondition = "Ten"
  | otherwise     = "Twenty"

但是,我不记得以前见过以这种方式编写的函数,也不知道这种技术叫什么,所以无法搜索有关此的任何其他信息。

所以我的问题是:

这些不是函数,只是变量绑定。您正确地理解了它是如何工作的。它没有任何特定的名称,因为它只是模式匹配的另一种应用。任何时候你可以声明一个变量,你可以在同一位置声明一个更复杂的模式。