相关疑难解决方法(0)

Haskell中的变量

为什么以下Haskell脚本无法按预期工作?

find :: Eq a => a -> [(a,b)] -> [b]
find k t = [v | (k,v) <- t]
Run Code Online (Sandbox Code Playgroud)

给定find 'b' [('a',1),('b',2),('c',3),('b',4)],解释器返回[1,2,3,4]而不是[2,4].u为了实现这一点,需要引入一个名为的新变量:

find :: Eq a => a -> [(a,b)] -> [b]
find k t = [v | (u,v) <- t, k == u]
Run Code Online (Sandbox Code Playgroud)

有谁知道为什么第一个变体不会产生预期的结果?

variables haskell

5
推荐指数
2
解决办法
602
查看次数

标签 统计

haskell ×1

variables ×1