anchor.diff:  	  args)))
   
   (defmacro with-api (api &body body)
  -  `(call-with-api ,api (lambda () ,@body)))
  +  `(call-with-api ',api (lambda () ,@body)))
   
   (defun call-with-api (api function)
  -  (let ((*api* api))
  +  (let ((*api* (if (symbolp api) (find-api api)  api)))
       (funcall function)))
   
   (defmacro define-api-function (api name method options args)
  
positive.code: 
    ;; Install the api function
    (let ((api (or *api* (error "Specify the api"))))
      (setf (gethash api (name api-function))
            api-function)))
  
  ;; (defmethod initialize-instance :after ((api-function api-function) &rest args)
  
negative.code:   (assert (char= (char string 0) #\?))
    (mapcar #'parse-parameter
  	  (cl-ppcre:split "&" (subseq string 1))))
  
  (defun parse-api-url (request-string)
    (multiple-value-bind (scanner vars)
  	(gen-regexp
  	 (if (find #\? request-string)
  	     (subseq request-string 0 (position #\? request-string))
  	     request-string))
      (let ((parameters 
  	   (when (find #\? request-string)
  	     (parse-parameters 
  	      (subseq request-string (position #\? request-string))
  	      ))))
        (values scanner vars parameters))))
  
  (defun gen-regexp (string)
    (let* ((vars nil)
  