Path: utzoo!utgpu!jarvis.csri.toronto.edu!mailrus!umich!yale!cs.utexas.edu!usc!ucla-cs!uci-ics!srinivas From: srinivas@ics.uci.edu (Yellamraju Srinivas) Newsgroups: comp.object Subject: Re: "Ad Hoc Polymorphism" -- I'm Quoting Someone Else Keywords: ad hoc polymorphism, reference to original use Message-ID: <25AA471B.5687@paris.ics.uci.edu> Date: 9 Jan 90 20:18:34 GMT References: <646@ajpo.sei.cmu.edu> Lines: 40 eberard@ajpo.sei.cmu.edu (Edward Berard) writes: >If you recognize this type of polymorphism as having a different name, >and can cite two, or more, earlier references, I will consider using >a different name. (Heck! I'll even take _one_ earlier reference. ;-)) Here is a quote from J. C. Reynolds [1]: The concept of polymorphism was first recognized by Strachey [2], who distinguished between "parametric" and "ad hoc" polymorphism. Intuitively, a parametric polymorphic function is one that behaves the same way for all types, while an ad hoc polymorphic function may have unrelated meanings for different tyupes. For example, an ad hoc function might add integers, "or" Boolean values, and compose functions. "Ad hoc" polymorphism is another name for overloading, i.e, the use the same syntactic symbol to denote different functions depending on the context. The concept of "parametric polymorphism" is an intuitive one. Recently, there have attempts to characterize this notion formally [3][4], by using the precise concepts of "functorial" and "natural" in category theory. [1] J.C.Reynolds, "Types, Abstraction and Parametric Polymorphism", Information Processing '83, Ed. R.E.A.Mason, North-Holland, 1983. [2] C. Strachey, "Fundamental Concepts in Programming Languages", Lecture Notes, International Summer School in Computer Programming, Copenhagen, August 1967. [3] E.S.Bainbridge, P.J.Freyd, A.Scedrov, and P.J.Scott, "Functorial Polymorphism", in "Logical Foundations of Functional Programming", Proceedings, Austin, 1987, Ed. G. Huet, Addison-Wesley, in press. [4] P.J.Freyd, J.Y.Girard, A.Scedrov, and P.J.Scott, "Semantic Parametricity in Polymorphic Lambda Calculus", in Proceedings, "Logic in Computer Science '88", Edinburgh, IEEE Computer Society Press, 1988. -- Y V Srinivas Dept of ICS, University of California, Irvine, CA 92717