anchor.diff:   `(progn
   		(defun ,name (stream instruction arguments enc)
   			(let ((code 0))
  +				(pprint enc)
   				,(when (first inst-layout)
   					;; Generate the let for all the registers
   					`(let ,(loop for i in (first inst-layout) for c from 1 collecting 
  
positive.code: 
  ; info about how to encode the function
  
  (defstruct encoding inst (spec 0) rd rs rt imm (fixed 0) fs ft fd func)
  
  ;;
  ;; encode instruction
  
negative.code: 
  						 ;; Float ops
  
  						 (abs.s   #b000101)
  						 (add.s   #b000000)
  						 (adda.s  #b000000)
  						 (div.s   #b000011)
  						 (lwc1    #b110001)
  						 (madd.s  #b000000)
  						 (madda.s #b000000)
  						 (max.s   #b000000)
  						 (min.s   #b000000)
  						 (msub.s  #b000000)
  						 (msuba.s #b000000)
  						 (mul.s   #b000000)
  						 (mula.s  #b000000)
  						 (suba.s  #b000000)
  						 (swc1    #b111001)
  
  						 (c.eq.s  #b011010 :fcmp-type)
  						 (c.f.s   #b011000 :fcmp-type)
  