There are 4 utilities.
- letf* v1.0
-
Given a list of
bindings
whose keys are places and whose values are forms, set them for the duration ofbody
, but restore their values (as visible upon evaluation of this macro) upon completion. The restoration is ensured withunwind-protect
.- Provides
letf*
- Requires
- zip, appendf
- let1 v1.0
-
Bind VAR to VAL within BODY. Equivalent to LET with one binding.
- Provides
let1
- if-let v1.0
-
Creates new variable bindings, and conditionally executes either
then-form
orelse-form
.else-form
defaults tonil
.bindings
must be either single binding of the form:(variable initial-form)
or a list of bindings of the form:
((variable-1 initial-form-1) (variable-2 initial-form-2) ... (variable-n initial-form-n))
All initial-forms are executed sequentially in the specified order. Then all the variables are bound to the corresponding values.
If all variables were bound to true values, the
then-form
is executed with the bindings in effect, otherwise theelse-form
is executed with the bindings in effect.- Provides
if-let
- when-let v1.0
-
Creates new variable bindings, and conditionally executes a series of forms.
- Provides
when-let
,when-let*