- Fields of mathematics
- >
- Mathematical logic
- >
- Type theory
- >
- Polymorphism (computer science)

- Mathematical concepts
- >
- Mathematical structures
- >
- Type theory
- >
- Polymorphism (computer science)

- Mathematical logic
- >
- Logic in computer science
- >
- Type theory
- >
- Polymorphism (computer science)

- Mathematical objects
- >
- Mathematical structures
- >
- Type theory
- >
- Polymorphism (computer science)

- Mathematics of computing
- >
- Logic in computer science
- >
- Type theory
- >
- Polymorphism (computer science)

- Philosophy of mathematics
- >
- Mathematical logic
- >
- Type theory
- >
- Polymorphism (computer science)

- Theoretical computer science
- >
- Logic in computer science
- >
- Type theory
- >
- Polymorphism (computer science)

Parametricity

In programming language theory, parametricity is an abstract uniformity property enjoyed by parametrically polymorphic functions, which captures the intuition that all instances of a polymorphic funct

Parametric polymorphism

In programming languages and type theory, parametric polymorphism allows a single piece of code to be given a "generic" type, using variables in place of actual types, and then instantiated with parti

Predicate dispatch

In computer programming, predicate dispatch is a generalisation of multiple dispatch ("multimethods") that allows the method to call to be selected at runtime based on arbitrary decidable logical pred

System F

System F (also polymorphic lambda calculus or second-order lambda calculus) is a typed lambda calculus that introduces, to simply typed lambda calculus, a mechanism of universal quantification over ty

Static polymorphism

No description available.

Intersection type discipline

In mathematical logic, the intersection type discipline is a branch of type theory encompassing type systems that use the intersection type constructor to assign multiple types to a single term.In par

First-class polymorphism

No description available.

Generics in Java

Generics are a facility of generic programming that were added to the Java programming language in 2004 within version J2SE 5.0. They were designed to extend Java's type system to allow "a type or met

Let-polymorphism

No description available.

Subtyping

In programming language theory, subtyping (also subtype polymorphism or inclusion polymorphism) is a form of type polymorphism in which a subtype is a datatype that is related to another datatype (the

Bounded quantification

In type theory, bounded quantification (also bounded polymorphism or constrained genericity) refers to universal or existential quantifiers which are restricted ("bounded") to range only over the subt

Multiple dispatch

Multiple dispatch or multimethods is a feature of some programming languages in which a function or method can be dynamically dispatched based on the run-time (dynamic) type or, in the more general ca

Polymorphic recursion

In computer science, polymorphic recursion (also referred to as Milner–Mycroft typability or the Milner–Mycroft calculus) refers to a recursive parametrically polymorphic function where the type param

Covariance and contravariance (computer science)

Many programming language type systems support subtyping. For instance, if the type Cat is a subtype of Animal, then an expression of type

Wildcard (Java)

In the Java programming language, the wildcard ? is a special kind of type argument that controls the type safety of the use of generic (parameterized) types. It can be used in variable declarations a

Intersection type

In type theory, an intersection type can be allocated to values that can be assigned both the type and the type . This value can be given the intersection type in an intersection type system.Generally

Dynamic dispatch

In computer science, dynamic dispatch is the process of selecting which implementation of a polymorphic operation (method or function) to call at run time. It is commonly employed in, and considered a

Impredicative polymorphism

No description available.

Row polymorphism

In programming language type theory, row polymorphism is a kind of polymorphism that allows one to write programs that are polymorphic on row types such as record types and polymorphic variants. A row

Higher-ranked polymorphism

No description available.

Polymorphism (computer science)

In programming language theory and type theory, polymorphism is the provision of a single interface to entities of different types or the use of a single symbol to represent multiple different types.

Ad hoc polymorphism

In programming languages, ad hoc polymorphism is a kind of polymorphism in which polymorphic functions can be applied to arguments of different types, because a polymorphic function can denote a numbe

Polyvariance

In program analysis, an analysis is called polyvariant if functions are analyzed multiple times—typically once at each call site—to improve the precision of the analysis.

Monomorphization

In programming languages, monomorphization is a compile-time process where polymorphic functions are replaced by many monomorphic functions for each unique instantiation. This transformation is desira

© 2023 Useful Links.