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 visual is sorely undervalued in modern scholarship. Art history has attained only a fraction of the conceptual sophistication of literary criticism.... Drunk with self-love, criticism has hugely overestimated the centrality of language to western culture. It has failed to see the electrifying sign language of images.”
—Camille Paglia (b. 1947)
“All history and art are against us, but we still expect happiness in love.”
—Mason Cooley (b. 1927)
“The best history is but like the art of Rembrandt; it casts a vivid light on certain selected causes, on those which were best and greatest; it leaves all the rest in shadow and unseen.”
—Walter Bagehot (18261877)