x<-Haskell中的xs是什么意思?

x<-Haskell中的xs是什么意思?,haskell,Haskell,在我的一门课程中,我遇到了这样一个问题: numbers xs = [x | x<−xs , even x] 数字xs=[x | x这是一种符号,其设计类似于标记,因为其他答案说明这是一种列表理解符号,这意味着一种根据另一个列表定义列表的方式。如果在后面的部分中指定一些谓词,则只会获取满足这些谓词的元素,例如示例[x | x[x*2 | x 10] [24,28,32,36,40] 或: λ>[显示x | x 10] ["12","14","16","18","20"] 在这种情况下

在我的一门课程中,我遇到了这样一个问题:

numbers xs = [x | x<−xs , even x] 

数字xs=[x | x这是一种符号,其设计类似于标记
,因为其他答案说明这是一种列表理解符号,这意味着一种根据另一个列表定义列表的方式。如果在
后面的部分中指定一些谓词,则只会获取满足这些谓词的元素,例如示例
[x | x[x*2 | x 10]
[24,28,32,36,40]
或:

λ>[显示x | x 10]
["12","14","16","18","20"]
在这种情况下,它意味着“取列表中的每个元素
xs
并按顺序替换
x
”。更一般地说,在一元上下文(do块)中,它意味着名称绑定到一元操作的返回值。请阅读。
[x | x <- xs, even x, x > 10]
λ> [x*2 | x <- [1 .. 20], even x, x > 10]
[24,28,32,36,40]
λ> [show x | x <- [1 .. 20], even x, x > 10]
["12","14","16","18","20"]