13Parameter utilities

Creates a procedure that may be used as a parameter’s guard procedure. The guard only allows values for which pred returns #t. If an invalid value is supplied, the guard raises exn:fail:contract with an error message based on the supplied type-message.

make-guard has been superseded by the parameter/c contract in PLT 4.

Examples:

> (defineparam

(make-parameter#f(make-guardinteger+false?"(U integer #f)")))

> (param1)

> (param#f)

> (param#t)

Expected (U integer #f), received #t

(define-parameteridinitial-valueguard-procwith-form-id)

Convenience form that expands into two definitions:

id is bound to a parameter with the supplied initial-value and guard-proc;