anchor.diff:      (loop for i in holders with n = -1 do
   	 (push i result)
   	 (push (nth (incf n) parameters) result))
  -    (remove-if #'null (nreverse result))))
  +    (remove-if #'(lambda (x)
  +		   (or (null x)
  +		       (= 0 (length x))))
  +	       (nreverse result))))
   
   (defun parse-uri (schema uri)
     "Parses URI against SCHEMA and returns a hashtable with all pathvariable bindings"
  
positive.code: (defun create-rest-dispatcher (schema method fun)
    "Creates a hunchentoot compatible dispatcher for a given url SCHEMA and request METHOD which will call the FUN function on match and hands over a parameter map hashtable"
    (let* ((uri (schema->regexpurl schema)))
      #'(lambda (request)
  	(when (and
  	       (equal method
  		      (request-method request))
  	       (scan uri (request-uri request)))
  	  #'(lambda () ;return a handler fun
  	      
  	      (let ((reqmethod (request-method *request*))
  		    (parameters (parse-uri schema (request-uri *request*))))
  
negative.code: 
  (defmacro defrest (pattern method varlist &body body)
    "Defines a new REST Method. It will listen to urls which match pattern, 
     have all template blocks replaced and binds variables to varlist.   
     Returns a dispatcher method, which can be put in the hunchentoot dispatcher 
     table AND creates an entry in the *rest-dispatcher-table* to be able to defrest 
     on toplevel.
  