我在 Haskell 中学习模式匹配,我发现了一些据说对模式匹配有好处的练习。
有没有人可以提供一些关于如何编写一个函数来返回表达式中加法运算数量的信息?
我看了一点,但找不到任何有关它的信息。实际上我怎样才能返回 Haskell 中的操作数?
我不明白的另一个练习是编写一个函数,该函数将返回表达式中的常量数。我不明白它们对常量数量的含义。可能在表达式中使用了变量?
编辑:
我忘了添加表达式的定义。我发现与此相关的是:
示例(表达式树)
data Expression = Constant Integer
| Negate Expression
| Add Expression Expression
| Multiply Expression Expression
deriving Show
示例(计算表达式)
eval e = case e of
Constant c -> c
Negate e -> -(eval e)
Add e1 e2 -> (eval e1) + (eval e2)
Multiply e1 e2 -> (eval e1) * (eval e2)
谢谢你。