anchor.diff:  ;; (duration '(1/2 1s)) = 0.5 beats + 1 second
   (defun duration (&rest items) ;; FIX
     )
  +
  +;;; freq macro
  +
  +(defgeneric frequency (item))
  +
  +(defmethod frequency ((item number))
  +  item)
  +
  +(defmethod frequency ((item symbol))
  +  (frequency (write-to-string item)))
  +
  +(defmethod frequency ((item string))
  +  )
  +
  +(defmacro f (&rest items)
  +  `(frequency ))
  +
  +;;;
   
   ;; FIX: is it possible to temporarily change the behavior of a character when a macro is being read?
   ;; i.e. so that newlines can be converted to symbols within a macro
  
positive.code: 	;; 	);
  	;; 	^pow(outMax/outMin, log(this/inMin) / log(inMax/inMin)) * outMin;
  	;; }
  
negative.code:     :instrument :bar
      :fuck 'baz)
  
  ;;; dur macro
  
  (defmacro d (&rest items)
    `(duration ',items))
  