anchor.diff:  
   (defun expex-make-return-value (ex s x)
     (let last (last x)
  -   	(if (expex-returnable? ex last.)
  -		(append (butlast x)
  -				(if (%setq? last.)
  -					(if (eq s (second last.))
  -				        (expex-guest-filter-setter ex last.)
  -						(expex-make-setq-copy ex last s))
  -				    (expex-make-%setq ex s last.)))
  +   	(? (expex-returnable? ex last.)
  +	   (append (butlast x)
  +			   (? (%setq? last.)
  +				  (? (eq s (second last.))
  +				     (expex-guest-filter-setter ex last.)
  +				     (expex-make-setq-copy ex last s))
  +				  (expex-make-%setq ex s last.)))
   		x)))
   
   (defun expex-atom-to-identity-expr (x)
  
positive.code: ;; XXX this sucks blood out of stones. Should have proper macro expansion
  ;; instead.
  (defun expex-convert-quotes (x)
    (mapcar (fn (if (quote? _)
  				  `(%quote ,._.)
  				  _))
  		  x))
  
  ;; Expand arguments to function.
  
negative.code:   (funcall (expex-setter-filter ex) x))
  
  (defun expex-guest-filter-arguments (ex x)
    (mapcar (fn funcall (expex-argument-filter ex) _) x))
  
  ;;;; UTILS
  
  