ad-hoc polymorphism

Noun

 * 1)  A kind of polymorphism where polymorphic functions can be applied to arguments of different types, as they can denote a number of distinct and potentially heterogeneous implementations depending on the types of argument to which they are applied.