x最后在做什么?为什么我需要把它写在那里?
(\x -> (>=5) x)
Run Code Online (Sandbox Code Playgroud)
如果我像这样调用函数:(\x -> (>=5) x) 5,第二个 x 在做什么?也许有人可以向我解释这一点。
我正在遵循教程并找到了这段代码:
data A = B | C deriving(Eq)
class K a where
f :: a -> Bool
instance K A where
f x = x == C
f _ = False
call = f B
Run Code Online (Sandbox Code Playgroud)
为什么我需要f _ = False?没有它我得到相同的结果。
我正在尝试在 Haskell 中使用类声明构建自己的计算器。
首先,我试图实现添加,但这里出现错误:
无法将预期类型“Exp -> Double”与实际类型“Exp”匹配
data Exp = Number Double | Add Exp Exp
class Calc a where
calculate :: a -> a -> Double
instance Calc Exp where
calculate (Add a b) = a + b
Run Code Online (Sandbox Code Playgroud)
我必须改变什么?