Version: 4.2
1.15 Parametrische Record-Typ-Definitionen
| (define-record-procedures-parametric (t p1 ) c p (s1 )) |
Die define-record-procedures-parametric ist wie define-record-procedures mit dem Unterschied, daß t an einen parametrischen Vertrag gebunden wird: Es muß genauso viele Parameter p1 geben wie Selektoren s1; für diese Parameter werden die Verträge für die Felder substituiert.
Beispiel:
| (define-record-procedures-parametric (pare a b) |
| make-pare pare? |
| (pare-one pare-two)) |
Dann ist (pare integer string) der Vertrag für pare-Records, bei dem die Felder die Verträge integer respektive string erfüllen müssen.