anchor.diff:  ;;;;
   ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
   (in-package :sheeple)
  +
  +(defmacro fun (&body body)
  +  "This macro puts the FUN back in FUNCTION."
  +  `(lambda (&optional _) (declare (ignorable _)) ,@body))
  +
  +(defmacro with-gensyms (names &body body)
  +  `(let ,(mapcar (fun `(,_ (gensym ,(string _)))) names)
  +     ,@body))
   
   (declaim (inline error-when))
   (defun error-when (condition error-datum &rest error-args)
  
positive.code: 
  (defmacro define-unbound-variables (&rest variables)
    `(progn ,@(mapcar (fun `(defvar ,@(ensure-list _))) variables)))
  
negative.code: 	((null (cdr args)) (car args))
  	(t `(aif ,(car args) (aand ,@(cdr args))))))
  
  (declaim (inline aconsf-helper))
  (defun aconsf-helper (alist key value)
    (acons key value alist))
  