anchor.diff:        (function-arguments (symbol-function x))))
   
   (defun transpiler-add-wanted-function (tr fun)
  -  (when (not (member fun (transpiler-wanted-functions tr)))
  +  (when (not (or (member fun (transpiler-wanted-functions tr))
  +				 (member fun (transpiler-unwanted-functions tr))
  +				 (assoc fun (expander-macros (expander-get (transpiler-macro-expander tr))))))
   	(push fun (transpiler-wanted-functions tr))))
   
   (defun transpiler-expand-args (tr x)
     (with (fname  (first (third x))
   		 d (transpiler-expand-argdef tr fname))
  +    (transpiler-add-wanted-function tr fname)
   	(if d
           (cdrlist (argument-expand d (cdr (third x)) t))
  -		(progn
  -		   (transpiler-add-wanted-function tr fname)
  -		   (cdr (third x))))))
  +	    (cdr (third x)))))
   
   ;;;; ENCAPSULATION
   
  -(defun transpiler-encapsulate-strings (form)
  -  (maptree #'((x)
  -               (if (stringp x)
  -                   (list '%transpiler-string x)
  -                   x))
  -           form))
  +(defun transpiler-encapsulate-strings (x)
  +  (if (atom x)
  +      (if (stringp x)
  +          (list '%transpiler-string x)
  +		  x)
  +	  (if (eq '%transpiler-native (car x))
  +		  x
  +		  (cons (transpiler-encapsulate-strings (car x))
  +		  		(transpiler-encapsulate-strings (cdr x))))))
   
   ;;;; EXPRESSION FINALIZATION
   
  
positive.code:   std-macro-expander
    macro-expander
    separator
    (function-args nil)
    (wanted-functions nil)
    (identifier-char? nil)
    (symbol-translations nil))
  
  (defun create-transpiler (&rest args)
    (with (tr (apply #'make-transpiler args))
  
negative.code: 				  (and verbose (format t "Unknown function ~A" (list x)))))))))
  
  (defun transpiler-transpile (tr forms name)
    (format t "### Pass 1...~%")
    (transpiler-pass1 tr forms)
    (with (w nil
  		 n (transpiler-wanted-functions tr))
  	(while (not (equal w n)) nil
        (transpiler-wanted tr #'transpiler-pass1 t)
  	  (setf w n
  			n (transpiler-wanted-functions tr))))
  
    (format t "### Pass 2...~%")
    (with (src (transpiler-concat-strings
  			   (list (transpiler-wanted tr #'transpiler-pass2 t)
  					 (transpiler-pass2 tr forms))))
    (format t "### Emitting code...~%")
  	(with-open-file f (open name :direction 'output)
  	  (format f "// TRE transpiler output~%")
  