ITpro連載 第15回 型からプログラムを当てる

http://itpro.nikkeibp.co.jp/article/COLUMN/20071005/283903/?ST=develop

今回は(今回も?)ややマニアックにparametricityやtype-directed partial evaluationの「お話」です。ちょっと詰め込み気味になってしまったかも…

追記:そういえば、parametricityが本当に役立った例として、ICFPプログラミングコンテスト2000レイトレーサがありました。テクスチャを記述する純粋関数型言語において、関数の引数にunitを与えてみて、エラーが起きなければ定数関数なのでその定数とおきかえるという。Jeromeが提案したのですが、効果抜群でした。

追記2:^->とか*^とか、わけのわからない演算子にしたのは、(Standard ML等と違って)OCamlではユーザ定義関数の"fixity"(前置か中置か)や結合性や優先順位が自由に指定できないためです…