by Dave Herman and Sam Tobin-Hochstadt.
This library provides several utilities for parameters.
Everything in this library is exported by a single module:
A pseudo-parameter is like a Racket parameter, but comprises both an accessor and a mutator function. This can be used, for example, to create compound parameters that simultaneously update multiple parameters.
procedure
( make-pseudo-parameter gettersetter)→(pseudo-parameter/c a)
getter:(->a)setter:(a->any)
procedure
x:any
procedure
( pseudo-parameter/c c)→contract?
c:contract?
A parameter set is a collection of Racket parameters that can be read or written to all at once with a prefab structure. Because the structure is prefab, a parameter set can also easily be marshalled and demarshalled (assuming its values are all write able, of course).
syntax
(param-iddefault-exprmaybe-guard)...)maybe-guard =| guard-expr