相关疑难解决方法(0)

比较Haskell中的函数

有没有办法比较Haskell中的两个函数?

我的想法是答案是否定的,因为函数不会派生Eq类型.但是我正在尝试编写一个非常简单的函数,这似乎是一件正常的事情:

search :: ((Enum a) => a -> a) -> Card -> [Card]
search op x list = if (op == succ && rank x == King) || 
                      (op == pred && rank x == Ace)
                   then []
                   else let c = [ n | n <- list, rank n == op (rank x)]
                     in if length c == 1
                     then x : search op (head c) list
                     else []
Run Code Online (Sandbox Code Playgroud)

错误信息:

No instance for (Eq (Rank -> Rank))
      arising …
Run Code Online (Sandbox Code Playgroud)

haskell

11
推荐指数
4
解决办法
6118
查看次数

标签 统计

haskell ×1