A data type that changes based on its current usage. For example, a programming language that supports polymorphic typing allows the same routine to work on both integer and floating point numbers, depending on which values are presented to it. See
type system and
data type.