     [(with-meta s-name md) params ugen-form]))
 
 (defmacro defsynth
-  "Define a synthesizer and return a player function.  The synth definition
-  will be loaded immediately, and a :new-synth event will be emitted.
+  "Define a synthesizer and return a player function.  The synth
+  definition will be loaded immediately, and a :new-synth event will
+  be emitted.
 
   (defsynth foo [freq 440]
     (sin-osc freq))

(defn synth-player
  [name params this & args]
    "Returns a player function for a named synth.  Used by (synth ...)
    internally, but can be used to generate a player for a pre-compiled
    synth.  The function generated will accept two optional arguments that
    must come first, the :position and :target (see the node function docs).

    (foo)
    (foo :position :tail :target 0)

       note#)))

(defmacro demo
  "Listen to an anonymous synth definition for a fixed period of time.
  Useful for experimentation.  If the root node is not an out ugen,
  then it will add one automatically.  You can specify a timeout in
  seconds as the first argument otherwise it defaults to *demo-time*
  ms.

  (demo (sin-osc 440))      ;=> plays a sine wave for *demo-time* ms
  (demo 0.5 (sin-osc 440))  ;=> plays a sine wave for half a second"
