anchor.diff:    (make-instance #+sbcl #+sb-thread 'threaded-http-listener
                    #+sbcl #-sb-thread 'araneida:serve-event-http-listener
                    #-sbcl 'threaded-http-listener
  -                 :address #(213 235 219 107)
  +                 :address #(127 0 0 1)
                    :port (araneida:url-port *base-url*)))
   
   (defclass index-handler (handler) ())
  
positive.code: 	    else
  	      collect `((option :value ,op) ,text))))
  
  (define-condition form-value-not-entered (error)
    ((name :accessor form-value-not-entered-name :initarg :name)))
  
  (install-handler (http-listener-handler *bench-listener*)
  		 (make-instance 'index-handler)
  		 (urlstring *index-url*) nil)
  
negative.code: (defun enteredp (param)
    (and param (not (equal "" param))))
  
  (defmacro param-bind ((&rest args) request &body body)
    (with-gensyms (unhandled-part params argstring)
      `(let* ((,unhandled-part (request-unhandled-part ,request))
              (,argstring (urlstring-unescape (subseq ,unhandled-part (mismatch ,unhandled-part "?"))))
              (,params (print (mapcar (lambda (pp) (split-sequence:split-sequence #\= pp))
                               (split-sequence:split-sequence #\& ,argstring))))
              ,@(loop for (arg default-value is-list) in args
                      collect `(,arg ,(if is-list
                                          `(mapcar #'second
                                                   (remove-if-not (lambda (name)
                                                                    (string-equal name ,(symbol-name arg)))
                                                                  ,params
                                                                  :key #'first))
                                          `(second (assoc ,(symbol-name arg) ,params :test #'string-equal))))))
         (print ,unhandled-part)
         (print ,argstring)
         (print ,params)
         ,@(loop for (arg default) in args
                 collect `(cond
                            ((not (enteredp ,arg))
                             (setf ,arg ,default))
                            ((equal ,arg "NIL")
                             (setf ,arg nil))))
         ,@body)))
  
  (defmethod handle-request-response ((handler index-handler) method request)
    (request-send-headers request :expires 0) ; TODO: set this to 20 minutes (-:
    (let ((s (request-stream request)))
      (param-bind ((implementations '("SBCL" "SBCL-character") t)
                   (only-release nil) ; TODO: this mode should display the last CVS version's results.
                   (host "walrus.boinkor.net")) request
          (emit-image-index s
                            :implementations implementations
                            :only-release only-release
  