Datentypen
Aus ProgrammingWiki
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 (DrRacket) |
#\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<? |
boolean? |
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.
Mit der Prozedur eval kann die Evaluation von Symbolen bei Bedarf erzwungen werden:
Die Evaluation von Symbolen spielt bei der Symbolverarbeitung eine große Rolle.
Wir wollen sie an dieser Stelle nur andeuten:
Aufgaben
- Testen Sie die oben angegebenen Beispiele ausführlich.
-
Nachfolgend ist eine Prozedur zur universellen Datentypprüfung (universal datacheck) implementiert.
Untersuchen Sie damit weitere Datentypen und -strukturen.