There are 7 utilities.
- void v1.0
-
Do absolutely nothing, and return absolutely nothing.
- Provides
void
- ensure-boolean v1.0
-
Convert
x
into a Boolean value.- Provides
ensure-boolean
- 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
- defaccessor v1.0
-
Define the function named
name
just as with a normaldefun
. Also define the setter(setf name)
. The form to be set (i.e., the place) should be wrapped in the local macroaccesses
. For example,CL-USER> (let ((x 0)) (defaccessor saved-x () (accesses x))) SAVED-X (SETF SAVED-X) CL-USER> (saved-x) 0 CL-USER> (setf (saved-x) 5) 5 CL-USER> (saved-x) 5
- Provides
defaccessor
,accesses
- Requires
- with-gensyms, parse-body
- until v1.0
-
Executes
body
untilexpression
is true.- Provides
until
- while v1.0
-
Executes
body
whileexpression
is true.- Provides
while
- Requires
- until