1.13 Parametrische Record-Typ-Definitionen

► |  | Sprachebenen und Material zu Die Macht der Abstraktion

1 | Die Macht der Abstraktion - Anfänger
2 | Die Macht der Abstraktion
3 | Die Macht der Abstraktion mit Zuweisungen
4 | Die Macht der Abstraktion fortgeschritten
5 | Konstruktionsanleitungen 1 bis 10
6 | Bilder konstruieren: "image.ss"
7 | Animationen: "world.ss"
8 | Turtle-Grafik: "turtle.ss"
9 | Abspielen von Audio-Dateien: "sound.ss"
10 | 3D-Liniengraphik: "line3d.ss"
11 | DMd A: Sprachen als Libraries
| Index

▼ | 1 | Die Macht der Abstraktion - Anfänger

1.1 | Definitionen
1.2 | Record-Typ-Definitionen
1.3 | Prozedurapplikation
1.4 | #t and #f
1.5 | lambda
1.6 | Bezeichner
1.7 | cond
1.8 | if
1.9 | and
1.10 | or
1.11 | Signaturen
1.12 | Testfälle
1.13 | Parametrische Record-Typ-Definitionen
1.14 | Eigenschaften
1.15 | Primitive Operationen

On this page:

define-record-procedures-parametric

top ← prev up next →

#### 1.13`` Parametrische Record-Typ-Definitionen

> syntax (define-record-procedures-parametric t cc c p (s1 ...))

Die define-record-procedures-parametric ist wie define-record-procedures. Zusäzlich wird der Bezeichner cc an einen Signaturkonstruktor gebunden: Dieser akzeptiert für jedes Feld eine Feld-Signatur und liefert eine Signatur, die nur Records des Record-Typs t erfüllen, bei dem die Feldinhalte die Feld-Signaturen erfüllen.

Beispiel:

> (define-record-procedures-parametric pare pare-of
> make-pare pare?
> (pare-one pare-two))

Dann ist (pare-of integer string) die Signatur für pare-Records, bei dem die Feldinhalte die Signaturen integer bzw. string erfüllen müssen.

Die Signaturen für die Feldinhalte werden erst überprüft, wenn ein Selektor aufgerufen wird.

top ← prev up next →