     (ugen spec rate special args)))
 
 (defn- make-buffer-id
-  "Returns a function that converts any buffer arguments to their :id property value."
+  "Returns a function that converts any buffer arguments to their :id property
+  value."
   [fun]
   (fn [& args]
     (apply fun (map #(if (buffer? %) (:id %) %) args))))
 
 (defn- make-ugen-fn
-  "Returns a function representing the given ugen that will fill in default arguments, rates, etc."
+  "Returns a function representing the given ugen that will fill in default
+  arguments, rates, etc."
   [spec rate special]
   (let [expand-flags (map #(:expands? %) (:args spec))]
     (make-buffer-id

  * (env-gen:ar ...)
  * (env-gen:kr ...)

  UGens will also have a base-name without a rate suffix that uses the default rate
  for that ugen:
  * (env-gen ...)   ;; Uses :kr, control rate for EnvGen

  The default rate is determined by the rate precedence:

(load "ugen/generic_ops")

(defn intern-ugens
  "Iterate over all UGen meta-data, generate the corresponding functions and
  intern them in the current or otherwise specified namespace."
  [& [to-ns]]
  (let [to-ns (or to-ns *ns*)]
    (doseq [ugen (filter #(not (or (= "UnaryOpUGen" (:name %))
