GCaml

改造: $Caml で home made overloading

alpha1 が出来ました: http://jun.furuse.info/hacks/gcaml backtrack して overload resolution を行います。ほとんど Haskell type class と同じ。 overlapping instance とか fun deps とか、そんな面白いものはありません resolution 上限が無いので変な…

改造 GCaml の書き直しもしくは $Caml #3: $-abs unification を制御する

さて、じゃあ今度は plus と minus を同時に使ってみましょう。 毎度あんまり面白くない例ですが、x + x - x を計算する(つもりの)関数 id を、前回の plus を参考に書いていみます: let plus : $:(d : 'a -> 'a -> 'a) = d let minus : $:(d : 'a -> 'a -> …

パッチ置いといた

パッチはここよ。 リリース段階でも何でもないので。期待しないほうが良いです。コンパイルの仕方は 慣れ 根性 コンパイルできた場合は今までのエントリと gcamltests/*.ml から推測してみて下さい。うまく動かない場合は、おかしいなー、などと思わずに、即…

昔の仕事を引っ張り出してみる。

id:ytqwerty さんが GCaml での type level programming の可能性にチャレンジされていた。正直六年前の事なので覚えていない事が多いし、そもそも type level programming をするつもりの拡張じゃないのでいろいろアレだが勘弁してほしい。全ソースは最後に…