098: either.hs で context reduction

↑up

概要

either.hs で context reduction エラー。 [Char] が Ord クラスのインスタンスになっていないことから型チェックにひっかかっている。

これを回避した either2.hs を作成して、これは test に加えておく (sample236.hs)。

調査ログ

2020-06-03 (Wed)

lib/Prelude.hs に以下を追加して解決:

instance (Ord a) => Ord [a] where
  [] <= _  = True
  _  <= [] = False
  (x:xs) <= (y:ys) | x == y    = xs <= ys
                   | x <  y    = True
                   | otherwise = False