let多相と型制約と型推論

こういう(けっこう前の)記事があって面白かった: no-maddojp.hatenablog.com 大変面白かったのと、何故こうなるのかが微妙に理解し切れなかったのと、で少し自分でも調べてみた。 ちょっと例を簡略化すると let f x = x in f 1, f true は型検査を通るけど let f x : 'a = x in f 1, f true let g (x : 'a) = x in g 1,…