Beim Programmieren von rekursiven Prozeduren müssen mindestens zwei Fälle abgedeckt werden; Abbruchbedingung(en) und Rekursionsschritt(e). Dabei sollte das Problem der möglicherweise auftretenden Linksrekursion berücksichtigt werden und durch "geschickte" Anordnung der einzelnen Programmteile (Abbruchbedingung vor Rekursionsschritt) umgangen werden.
Die rekursive Programmiertechnik eignet sich beispielsweise bei transitiven Problemen (beispielsweise: Hierarchischen Beziehungen), bei der Listenverkettung und der Listenumkehrung. Bei der Listenumkehrung wird zusätzlich das Konzept der Akkumulatoren vorgestellt. Akkumulatoren dienen dem Festhalten und Weitergeben von Zwischenergebnissen bei rekursiven Prädikaten. Dies wird zur Effizienzsteigerung der Listenumkehrung benötigt.