Aggressive type inference
John Aycock
International Python Conference 2000 (Python8)
https://legacy.python.org/workshops/2000-01/proceedings/papers/aycock/aycock.pdf
Pythonのような型のない言語に対して型推論をしたい。
Giving people a dynamically-typed language does not mean that they write dynamically-typed programs.
という方向性のもと、flow-insensitiveな型を求めることを目標にする。
与えられたプログラムを元に、スコープの定義、代入、演算などのみに削ぎ落したものを作る。これによって型の等号制約が求まるので、これを元に型を決めていく。
nekketsuuu.icon 論文ではunionも求めるみたいに書いてあったけど、そうであれば不等号制約も必要なはず。
nekketsuuu.icon このままだと動的にメソッド定義する部分とかは扱えないはず。
#論文