X-Git-Url: https://www.chiark.greenend.org.uk/ucgi/~mdw/git/sod/blobdiff_plain/dc162ca6f0f2bbcb045a03df61c76e37c48d85a7..c34b237da0bb4bf08a3531a2e11442623df7e9d4:/src/utilities.lisp?ds=inline diff --git a/src/utilities.lisp b/src/utilities.lisp index 72423fd..72af8b3 100644 --- a/src/utilities.lisp +++ b/src/utilities.lisp @@ -708,6 +708,17 @@ (defun compose (function &rest more-functions) (multiple-value-call func-b (apply func-a args))))) (reduce #'compose1 more-functions :initial-value function))) +;;;-------------------------------------------------------------------------- +;;; Variables. + +(export 'defvar-unbound) +(defmacro defvar-unbound (var doc) + "Make VAR a special variable with documentation DOC, but leave it unbound." + `(eval-when (:compile-toplevel :load-toplevel :execute) + (defvar ,var) + (setf (documentation ',var 'variable) ',doc) + ',var)) + ;;;-------------------------------------------------------------------------- ;;; Symbols.