2021-03-09
TypingML4
今までの評価系の実装と同じように導出器を書くために、型推論器は型環境と式を受け取って型付きの式を返すようになっている
正確には末端の項(変数参照やリテラル、関数の引数)にだけ型が付いている
複合的な式の型は末端項の型があれば復元できる
既存の式の構造を保ちつつ柔軟に型情報を持たせるにはF#の型システム(or tosuke.iconの知識)では貧弱すぎたからというのもあります。ウオー 型なら末端項から復元ができるが、ソース上の位置を取り回したいとかになるとうまくいかないのでより一般的にどうやるのか知りたい。教えてほしい TypeScriptとか、まあ普通に使われるような言語だと安易にデータ構造に基底型を提供できるし何も考えなくていいんだけど