# Polymorphic lambda-calculus

language, types

(Or “second order typed lambda-calculus”, “System F”, “Lambda-2”). An extension of typed lambda-calculus allowing functions which take types as parameters. E.g. the polymorphic function “twice” may be written:

twice = /\ t . \ (f :: t -> t) . \ (x :: t) . f (f x)

(where “/\” is an upper case Greek lambda and “(v :: T)” is usually written as v with subscript T). The parameter t will be bound to the type to which twice is applied, e.g.:

twice Int

takes and returns a function of type Int -> Int. (Actual type arguments are often written in square brackets [ ]). Function twice itself has a higher type:

twice :: Delta t . (t -> t) -> (t -> t)

(where Delta is an upper case Greek delta). Thus /\ introduces an object which is a function of a type and Delta introduces a type which is a function of a type.

Polymorphic lambda-calculus was invented by Jean-Yves Girard in 1971 and independently by John C. Reynolds in 1974.

[“Proofs and Types”, J-Y. Girard, Cambridge U Press 1989].

(2005-03-07)

Tagged: p

Read Also:

- Polymorphic reticulosis
polymorphic reticulosis n. See lymphomatoid granulomatosis.

- Polymorphism
[pol-ee-mawr-fiz-uh m] /ˌpɒl iˈmɔr fɪz əm/ noun 1. the state or condition of being . 2. Crystallography. crystallization into two or more chemically identical but crystallographically distinct forms. 3. Biology. the existence of an organism in several form or color varieties. 4. Genetics. the presence of two or more distinct phenotypes in a population due […]

- Polymorphocellular
polymorphocellular pol·y·mor·pho·cel·lu·lar (pŏl’ē-môr’fə-sěl’yə-lər) adj. Relating to or formed of cells of several different kinds.

- Polymorphonuclear
[pol-ee-mawr-fuh-noo-klee-er, -nyoo- or, by metathesis, -kyuh-ler] /ˌpɒl iˌmɔr fəˈnu kli ər, -ˈnyu- or, by metathesis, -kyə lər/ adjective, Cell Biology. 1. (of a leukocyte) having a lobulate nucleus. /ˌpɒlɪˌmɔːfəʊˈnjuːklɪə/ adjective 1. (of a leucocyte) having a lobed or segmented nucleus See also polymorph (sense 3) polymorphonuclear pol·y·mor·pho·nu·cle·ar (pŏl’ē-môr’fə-nōō’klē-ər, -nyōō’-) adj. Having a lobed nucleus. Used […]