Principe fonctionnel: on effectue des tâches (ou procédures) atomiques pour arriver à un tout. Exemple d'une succession de coursiers qui vont effectuer chacun une infime partie d'une mission.
Exemple du bâtiment. Le grutier va apporter des parpaings aux massons, qui vont à leur tour donner des gravats au grutier afin qu'il puisse redescendre son chargement. Chacun a son programme, et le grutier suspend son programme pendant que le programme des maçons s'exécute. On a un branchement de séquence, mais le problème c'est de restaurer le compteur ordinal afin qu'il pointe sur l'instruction suivant le branchement de séquence. On a donc besoin de conserver cette adresse, mais comment ?
La meilleure solution est d'enregistrer les valeurs dans une pile, de les empiler à chaque appel de fonction et de les dépiler à chaque fin de fonction.