暇をみつけては python の型推論をやっている (やろうとしている)。でも、いまだに本当にこれが「原理的に可能」なのかどうか疑問だ…。 http://www.unixuser.org/~euske/offline/memo/cur/cur.html#180812 「原理的に可能」とかについて. まず「原理的に可能」の意味を考える必要がある.「可能」ってなに?なにができたら「可能」なの? 型推論とかのプログラム解析の技術を評価する場合,二つの性質が重要になる.「健全性」と「完全性」.「型推論が健全性を持っている」というのは,「型が推論できたら,そのプログラムは正しい」ということ*1.「型推論が完全性を持っている」というのは,「正しいプログラムは必ず型が推論できる」ということ.MLなんかの型推論は,完全かつ健全である.非常に良くできた型推論アルゴリズムと言える.ただし,型推論アルゴリズムと