Type Inference
型推論は、明示的な注釈なしに式の型を自動的に推測する。Hindley-Milner アルゴリズムは関数型言語の基盤である。
目的
注釈の負担を減らしながら、静的型安全性を保つ。
メカニズム
Hindley-Milner は単一化を通じて最も一般的な型(主型)を導出する。アルゴリズム W は式から型制約を生成して単一化する。Rust は HM の変種にライフタイムを加えたものを使い、TypeScript は構造的型推論を使う。
ユースケース
- 関数型プログラミング言語
- Rust の型推論
- TypeScript の推論