Fachkonzept
Fachkonzept: Signaturdefinition und Funktionsdefinitionen
Um in Racket eine Funktion zu definieren, nutzen wir einen Ausdruck zur Signaturdefinition und einen zur Funktionsdefinition:
;Signaturdefinition
(: funktionsname (datentypÜbergabe -> datentypRückgabe))
;Funktionsdefinition
(define funktionsname
(lambda (...)
(...)
))
Mit der Signaturdefinition legen wir eine Signatur für eine neue Funktion fest.
Die Funktion selbst wird mit der Funktionsdefinition definiert. Diese enthält alle notwendigen Informationen für die Verarbeitung der Übergabedaten.
Theoretisch ist es in Racket auch möglich eine Funktionsdefinitionen ohne Signaturdefinitionen zu erstellen.
In diesem Fall wird der Funktion die Signatur Die Funktion selbst wird mit der Funktionsdefinition definiert. Diese enthält alle notwendigen Informationen für die Verarbeitung der Übergabedaten.
any -> any
zugeordnet, die
jeden beliebigen Datentyp akzeptiert.
Fachkonzept: Parameter und Funktionskörper
Die Funktionsdefinition enthält alle notwendigen Informationen für die Verarbeitung der Übergabedaten. Hierzu werden in der Funktionsdefinition Parameter und ein Funktionskörper festgelegt:
;Signaturdefinition
(: funktionsname (datentypÜbergabe1 ... datentypÜbergabeN -> datentypRückgabe))
;Funktionsdefinition
(define funktionsname
;Festlegung der Parameter hinter "lambda"
;Die Anzahl Parameter entspricht exakt der Anzahl der Übergabedaten
(lambda (parameterName1 ... parameterNameN)
;Beispielhafter Funktionskörper:
(* (+ parameterName1 parameterName2) ...)
))
Ein Parameter ist ein Name,
unter welchem die Übergabedaten in der Funktion genutzt werden können.
Die Anzahl der Parameter muss daher exakt mit der Anzahl der Übergabedaten übereinstimmen.
Innerhalb des Funktionskörpers erfolgt die Verarbeitung der Übergabedaten zu einem Rückgabedatum. Der Funktionskörper besteht aus einem einzelnen Ausdruck, dessen erzeugtes Rückgabedatum auch das Rückgabedatum der gesamten Funktion ist.
Innerhalb des Funktionskörpers erfolgt die Verarbeitung der Übergabedaten zu einem Rückgabedatum. Der Funktionskörper besteht aus einem einzelnen Ausdruck, dessen erzeugtes Rückgabedatum auch das Rückgabedatum der gesamten Funktion ist.