Datentypen

Aus ProgrammingWiki
Archivierte Version vom 2012-09-17T21:39:08+00:00. Aktuelle Version

Datentypen beschreiben den Wertebereich von Daten.
Damit wird festgelegt, welche speziellen Operationen mit den Daten ausgeführt werden können.

Ausgewählte Datentypen in Scheme

  Zahlen Zeichen Zeichenketten Wahrheitswerte
Beispiele 12
-0.25
3e-04
2/3
#\a #\B
#\+
#\space
#\tab
#\newline
"Informatik"
"Heute ist ein schoener Tag"
"12.03"
"(+ 1.5 2.3)"
#t
#f
Operatoren +, -, *, /
expt
abs, sqr, sqrt
sin, cos, tan
asin, acos, atan
  string-append
string-length
not, and, or
Prädikate number? char?
char=?
char
string?
string=?
string
 
Konstruktoren     string  
Selektoren     string-ref
substring
 
Anwendungen

Zusätzlich gibt es Operatoren zur Konvertierung zwischen Daten unterschiedlicher Datentypen:

Symbole

Mit der Quotierung kann die Evaluation von Ausdrücken unterdrückt werden:

Damit wird zusätzlich die Definition eines Datentyps Symbol sinnvoll.
Symbole sind nichtnumerische und nichtstrukturierte (d.h. atomare) Ausdrücke, deren Evaluation mit quote unterdrückt wird.

Beispiele:

  Syntax Beispiele
Prädikat symbol?

Konvertierungen symbol->string
string->symbol

Wir wissen bereits aus der Einführung in die Kommunikation mit Scheme:
Mit define kann man an ein Symbol einen Wert binden. Symbole, an die Werte gebunden sind, heißen Variablen.

Die Evaluation von Symbolen kann bei Bedarf mit eval erzwungen werden:

Die Evaluation von Symbolen spielt bei der Symbolverarbeitung eine große Rolle.
Wir wollen sie an dieser Stelle nur andeuten:

Aufgaben

  1. Testen Sie die oben angegebenen Beispiele ausführlich.

  2. Nachfolgend ist eine Prozedur zur universellen Datentypprüfung (universal datacheck) implementiert.
    Untersuchen Sie damit weitere Datentypen und -strukturen.