s n h m r u
i

Fachkonzept: Definitionen

Definitionen in Racket

In Racket ist es möglich Programmierelemente (z.B. Daten, Funktionsanwendungen oder Funktionen) einen Namen zuzuordnen. Der Name kann anstelle des definierten Elements verwendet werden.

Mit einer Definition ordnet man Daten, Funktionsanwendungen oder Funktionen einen Definitionsnamen zu. Dieser kann anstelle des definierten Elements genutzt werden. Eine Definition ist immer eindeutig und unveränderlich.
Eine Definition in Racket wird mit dem Schlüsselwort define gesetzt:
(define Definitionsname zu-definierendes-Element)

Eine Definition kann sowohl innerhalb als auch außerhalb eines Funktionskörpers erfolgen.

Eine lokale Definition ist eine Definition, die innerhalb eines Funktionskörpers gesetzt wird. Eine lokale Definition kann nur innerhalb der Funktion genutzt werden. Eine Definition, die nicht lokal ist, nennen wir eine globale Definition. Wenn es in einer Funktion eine lokale Definition gibt, die denselben Namen wie eine globale Definition hat, wird innerhalb der Funktion die lokale Definition verwendet.

Beispiel

(define globaleDefinition 10)

(define globalerFunktionsname
  (lambda (x)
    (define lokaleDefinition 20)  
        (* (+ x lokaleDefinition) globaleDefinition)    
))

Unveränderlichkeit in der funktionalen Programmierung

In funktionalen Programmiersprachen sind sämtliche Daten unveränderlich. Das bedeutet auch, dass es keine klassischen Variablen wie in anderen Programmierparadigmen gibt.

Die Unveränderlichkeit (Immutability) ist eine zentrale Eigenschaft funktionaler Programmiersprachen.
Unveränderlichkeit bedeutet, dass bestehende Daten nicht verändert werden können, sondern bei Änderungen neue Daten erzeugt werden.

Suche

v
100.137.3.2.1.4 Fachkonzept: Definitionen
Kopieren durch Anklicken

Rückmeldung geben