Version: 4.2.1
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.