   ([input output] {:input input :output output})
   ([singleton] (section singleton singleton)))
 
-(defn generator
+(defn source
   "A graph of synthesis nodes without an input, so another graph can't connect to it."
   [node]
   (section nil node))

  "Make noise according to the supplied strategy for creating bits."
  [generate-bit!]
  (fn [context at duration]
    (generator
      (doto (.createBufferSource context)
        (-> .-buffer (set! (buffer generate-bit! context (+ duration 1.0))))
        (.start at)))))

(defn oscillator
  [type freq]
  (fn [context at duration]
    (source
      (doto (.createOscillator context)
        (-> .-frequency .-value (set! 0))
        (-> .-frequency (plug freq context at duration))
