Los tipos de inferencia es una característica predominante de los lenguajes de programación funcionales tales como ML, Haskell, C#, Vala y Ocaml. La inferencia de tipos asigna automáticamente un tipo de datos a una función sin necesidad de que el programador lo escriba.