    name default pairs, name [default rate] pairs or a vector of maps:
 
   (defsynth foo [freq 440] ...)
+  (defsynth foo [freq [440 :ar]] ...)
   (defsynth foo [freq {:default 440 :rate :ar}] ...)
 
   Returns a vec of param maps"

  (def foo
    (synth [freq 440] (out 0 (sin-osc freq))))

  A doc string can also be included:
  (defsynth bar
    \"The phatest space pad ever!\"


  These can also be abbreviated:
  (foo :tgt 2 :pos :head)

  "
  [s-name & s-form]
  {:arglists '([name doc-string? params ugen-form])}
