Eq
Data ライブラリの型クラスの定義を読んでいましたが、混乱しています。どの時点で、2 つの値が等しいか等しくないかが認識されます。私が見たところ、彼らはお互いを無限に呼び合うように見えます.
次のように定義されています。
class Eq a where
(==), (/=) :: a -> a -> Bool
x /= y = not (x == y)
x == y = not (x /= y)
Bool
誰かが価値を実現する場所を説明してくれませんか? 彼らはお互いに電話していますか、それとも何か他のことが起こっていますか?