Phantom type ではちゃんと実装を隠蔽しましょう

コメント欄が無いのでトラックバックしておきます http://d.hatena.ne.jp/tatta/20100623/ # isz (isz (lit 0)) - : bool term = IsZ (IsZ (Lit 3)) !!! isz : int term -> bool termなので型エラーになってほしいのに... OCaml のバグじゃないかと疑っておられますが、バグではありません。Phantom type を使おうとさ…