summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--hyperquirks.lisp9
1 files changed, 7 insertions, 2 deletions
diff --git a/hyperquirks.lisp b/hyperquirks.lisp
index bb99819..36029e2 100644
--- a/hyperquirks.lisp
+++ b/hyperquirks.lisp
@@ -4,6 +4,11 @@
;;; MACROS
+(defmacro defvarf (var &optional val doc)
+ `(progn
+ (defvar ,var nil ,doc)
+ (setf ,var ,val)))
+
(defmacro imperative (&body body)
"Evaluate expressins in BODY in sequence. Expressions that look
like (:= VAR1 EXPR1 ...) will expand into a LET* form whose bindings
@@ -80,9 +85,9 @@ NIL
4
"
(let* ((tmpvar
- (gensym))
+ (gensym "TEMP"))
(block-name
- (gensym))
+ (gensym "BLOCK"))
(body
(loop for a in accessors
collect `(when (funcall ',test ,tmpvar)