anchor.diff:  	(loop 
   	   do 
   	     (cond ((equalp chosen-option "")
  -		    (if default
  -			(return default)
  -			(return (reverse chosen-options))))
  +		    (if chosen-options
  +			(return (reverse chosen-options))
  +			(return default)))
   		   ((find chosen-option (mapcar #'princ-to-string options) :test #'string=)
   		    (pushnew (find chosen-option (mapcar #'princ-to-string options) :test #'string=) chosen-options :test test)
   		    (when print-options
  
positive.code: 
    Example: 
  
    ``(choose-many \"Choose: \" (list \"foo\" \"bar\" \"baz\") :default \"baz\")``
  
    Tags: menu, choose" 
    (let ((chosen-options nil))
      (flet ((print-options ()
  	     (loop 
  
negative.code: 
    ``(choose \"Choose: \" (list \"foo\" \"bar\" \"baz\") :default \"baz\")``
  
    Tags: menu, choose"
    (assert (or (not default)
  	      (member default options :test 'string=))
  	  nil "Invalid default: ~s" default)
    (flet ((print-options ()
  	   (loop 
  	      for option in options
  