4.2    Encapsulamiento por subprogramas.

Un subprograma es una operación abstracta definida por el programador.

Al igual que con las operaciones primitivas, una definición de subprograma consta de dos partes:

Una especificación, y
Una implementación.

La especificación de un subprograma contiene:

El nombre del subprograma
Un signature, que nos da el número de argumentos, su orden, el tipo de cada uno; y el número de resultados, su orden, y el tipo de cada uno.
La acción realizada por el subprograma, i. e., una descripción de la función que computa.