Funktionen für Listen allgemein

Das Schema sieht immer so aus, dass eine Fallunterscheidung getroffen wird. Bei dieser wird mit if erst geprüft, ob die Liste leer ist. Wird eine neue Liste ausgegeben, ist meist die Folge, dass empty ausgegeben wird. Soll dagegen keine Liste entstehen, muss da etwas anderes ausgegeben werden.

Wenn die Liste nicht leer ist, wird das erste Element irgendwie verändert und dann entweder mit cons oder einer anderen Operation (wenn keine neue Liste ausgegeben werden soll) mit dem erneuten Aufruf für den Rest der Liste verknüpft.

Wenn die Funktion, die das erste Element (und damit alle Elemente in der Liste) verändert, komplexer ist, wird sie ausgelagert und eigens implementiert und dann eben nur aufgerufen für das erste Element.

Keine Kommentare:

Kommentar veröffentlichen