Einführung in die funktionale Programmierung mit Miranda

Bok av Hinze
MIRA. You have often Begun to tell me what I am ; but stopp 'd, And teft me to a bootless inquisition, Concluding , Stay ; not yet. ' PRO. The how"'" now come ,. The very minute bids thee ope thine car. "The Tempest" von William Shakespeare (Akt 1, S::;cnc 1) Das vorliegende Buch ist aus Begleitmaterialien zu einem Programmierkurs entstanden, den ich im Sommersemester 1991 an der Universitt Bonn gehalten habe. Es beschreibt grundlegende und weiterfhrende Kom;epte der funktionalen l Programmierung und der Programmiersprache Miranda . Eine rein funktionale Sprache wie Miranda ist aus mindestens drei Grnden eine interessante und faszinierende Alternative sowohl zu herkmmlichen, impera tiven Sprachen als auch zu hybriden Sprachen wie LISP oder Scheme, die neben einem funktionalen Kern viele imperative Konstrukte inkorporieren. 1. Funktionale Programme sind krzer, einfacher zu verstehen und besitzen ei nen hheren Abstraktionsgrad als korrespondierende imperative Programme. 2. Sie sind einer mathematischen Behandlung einfacher zugnglich. 3. Die angenehmen mathematischen Eigenschaften (Funktionen sind Funktio nen im mathematischen Sinn) erleichtern eine Implementierung auf paralle len Rechnerarchitekturen. Insbesondere der letzte Punkt erffnet fr die Zukunft vielversprechende Perspek tiven. Miranda verkrpert die Tugenden funktionaler Sprachen in besonderer Weise. Die Syntax ist prgnant und frei von syntaktischem Ballast. Funktionen wie Typen werden mittels (rekursiver) Gleichungen definiert. Muster auf der linken Seite von Funktionsdefinitionen frdern die Lesbarkeit der Definitionen.