hayaのHaskell日記

2006-08-27

[] 9.5節 型クラス 18:12

型クラスは、数あるいろんな型を性質ごとに分類したグループみたいな感じ。そして、そのグループに属するためには、必要な条件(クラスメソッドの実装)がある。いや、条件というより、使えるクラスメソッドによって分類されるといったほうがいいのかな。うーん。

ふつケルに書いてあるように、Javaインターフェース概念としては近い。多重継承ができる。Eq型クラスデフォルトの定義が面白い。

以前に悩んでいたことも、この節を読むことで解決した。==と等価演算子多相型で定義するときは、ちゃんと引数Eq型クラスインスタンスの型であることを書かなければエラーが出る、ということ。

(<><>) :: (Eq a) => a -> a -> Bool
a <><> b = a == b

これでおk。

トラックバック - http://haskell.g.hatena.ne.jp/harg/20060827