7.7
5 Definitions and Binding Forms
5.1 mischief/define: Definition Forms
(require mischief/define) | package: mischief |
syntax
(at-end body:expr ...)
Lifts the body
definitions and expressions to the end of the enclosing
module.
syntax
(define-single-definition define-one-id define-many-id)
Defines define-one-id in terms of define-many-id, where
define-many-id defines multiple bindings similar to
define-values and define-syntaxes, and
define-one-id defines a single binding with shorthand for functions.
syntax
(define-if-unbound id expr)
(define-if-unbound (id . formals) body ...+)
syntax
(define-values-if-unbound {id ...} expr)
syntax
(define-syntax-if-unbound id expr)
(define-syntax-if-unbound (id . formals) body ...+)
syntax
(define-syntaxes-if-unbound {id ...} expr)
Variants of define, define-values, define-syntax,
and define-syntaxes that define the given ids if they have no
existing binding, and do nothing if the ids are already bound.
syntax
(define-provide-pre-syntax id expr)
(define-provide-pre-syntax (id . formals) body ...+)
Defines provide pre-transformers using define-syntax and
make-provide-pre-transformer.
syntax
(define-unimplemented id ...)
Use this macro to define names that will be needed but are not yet
implemented. Defines each id as a macro such that any reference
raises an exception at run-time.
syntax
A macro that expands any references to an expression that raises an exception
at run-time.
syntax
(unimplemented-out id ...)
5.2 mischief/match: Pattern Matching
(require mischief/match) | package: mischief |