Non capisco la connessione tra inferenza di tipo e sistemi di tipi avanzati. Non vedo perché Haskell o Standard ML o OCaml non possano esistere senza inferenza di tipo. La mia unica ipotesi è che l'inferenza di tipo avrebbe potuto essere una tendenza negli anni '70 quando ML uscì per la prima volta e le lingue discendenti mantennero quella capacità in aggiunta al compito principale del sistema di tipi che era quello di garantire la sicurezza del tipo. O forse il tipo di algoritmo di sicurezza ha anche dato facilmente la possibilità di inferire i tipi ed è stato incluso solo perché era semplice?
Stavo solo rileggendo l'articolo di wikipedia su Sistema F e indica che HM ha introdotto serie limitazioni al tipo sistema per ottenere l'inferenza di tipo funzionante. Questo è piuttosto sorprendente da leggere.