How to Make Ad-Hoc Polymorphism Less Ad Hoc

How to Make Ad-Hoc Polymorphism Less Ad Hocという論文を(途中まで)読んだ。Ad-hoc Polymorphismを実現するために、type classという新しい概念を導入しよう、という話。著者は Philip Wadler。
 そもそも、Haskellで出てきたtype classという概念について知りたくて読みはじめたのだが、自分がtype classのどこがわからないのかが、ようやくわかってきた。今はtype classありのコードをtype classなしのコードにtranslateするところでひょっこりと出てきた、type constructorという概念が理解できずにつまづいている。ここを乗り越えればtype classの理解はもうすぐのような気がするのだが、お腹が空いたのでとりあえず家に帰る。