克里斯托弗·斯特雷奇于1967年8月在哥本哈根的计算机程序设计暑期学校发表了着名论文《》中首次提出了参数多态、特设多态、左值、右值等概念。1975年ML语言首次实现了参数多态。 现在，Standard ML, OCaml, F#, Ada,Haskell, Mercury, Visual Prolog, Scala, Julia等。Java, C#, Visual Basic .NET and Delphi引入了泛型作为参数多态。C++的模板特殊化这样的类型多态（type polymorphis