Haskell 变量不在元组的作用域中

Haskell 变量不在元组的作用域中,haskell,Haskell,我有一个如下所示的函数: format input = let input (name,_,_,_) = name n = 15 - length name 其目的是从元组中获取一个值,并将该值(名称)存储到名为name的变量中。然后我创建一个名为n的新变量,它从一个数字中减去该字符串的长度。当我编译这个时,我得到一个错误,说“name”超出了n=。。。线路 变量不在范围内:名称::t1 a2 不确定从这里到哪里,或者我可能需要更改什么。变量输入位于右侧;模式(

我有一个如下所示的函数:

format input = 
   let
      input (name,_,_,_) = name
      n = 15 - length name
其目的是从元组中获取一个值,并将该值(名称)存储到名为name的变量中。然后我创建一个名为n的新变量,它从一个数字中减去该字符串的长度。当我编译这个时,我得到一个错误,说“name”超出了n=。。。线路

变量不在范围内:名称::t1 a2


不确定从这里到哪里,或者我可能需要更改什么。

变量
输入位于右侧;模式
(名称,,,,)
本身位于左侧

format input = 
    let (name, _, _, _) = input
        n = 15 - length name
    in ...

您希望
name
input(name,,,,,,)=name
的RHS上有什么值?@chepner我的元组设置为“type input=(String,Double,Int,Int)”,因此name将是一个字符串。