Subprogram Overloading
Because a function or procedure is uniquely identified by its name in combination with its argument types, there can be more than one function or procedure defined with the same name, depending on the types of the operands required. This feature (called subprogram overloading) is important because the function required to perform a given operation on one type of data may be quite different than the function required for another type.
It is unlikely that you will need to use subprogram overloading in your own design efforts. Instead, you will use the standard data types provided for you in the language standards, and you will use the predefined operators for those data types exclusively. You might find it useful, however, to look over the operators defined in the standard libraries so you have a better idea of the capabilities of each standard data type provided.