History
Parametric polymorphism was first introduced to programming languages in ML in 1976. Today it exists in Standard ML, OCaml, F#, Ada, Haskell, Visual Prolog, Scala, and others. Java, C#, Visual Basic .NET and Delphi have each recently introduced "generics" for parametric polymorphism. Some implementations of type polymorphism are superficially similar to parametric polymorphism while also introducing ad-hoc aspects. One example is C++ template specialization.
The most general form of polymorphism is "higher-rank impredicative polymorphism". Two popular restrictions of this form are restricted rank polymorphism (for example, rank-1 or prenex polymorphism) and predicative polymorphism. Together, these restrictions give "predicative prenex polymorphism", which is essentially the form of polymorphism found in ML and early versions of Haskell.
Read more about this topic: Parametric Polymorphism
Famous quotes containing the word history:
“The history of all hitherto existing society is the history of class struggles.”
—Karl Marx (18181883)
“Perhaps universal history is the history of the diverse intonation of some metaphors.”
—Jorge Luis Borges (18991986)
“There are two great unknown forces to-day, electricity and woman, but men can reckon much better on electricity than they can on woman.”
—Josephine K. Henry, U.S. suffragist. As quoted in History of Woman Suffrage, vol. 4, ch. 15, by Susan B. Anthony and Ida Husted Harper (1902)